NSXMLDocument
Экземпляр NSXMLDocument
представляет XML-документ, как усвоено в логическую древовидную структуру. NSXMLDocument
объект может иметь многократные дочерние узлы, но только один элемент, корневой элемент. Любой другой узел должен быть a NSXMLNode
объект, представляющий комментарий или инструкцию обработки. При попытке добавить какой-либо другой вид дочернего узла к NSXMLDocument
объект, такой как атрибут, пространство имен, другой объект документа или элемент кроме корня, NSXMLDocument
повышает исключение. Если Вы добавляете допустимый дочерний узел и что объект уже имеет родителя, NSXMLDocument
повышает исключение. NSXMLDocument
объект может также иметь глобальные документом атрибуты, такие как версия XML, кодировка символов, сослался на DTD и тип MIME.
Инициализаторы NSXMLDocument
класс считал внешний источник XML, ли это быть локальным файлом или удаленным веб-сайтом, проанализируйте его и обработайте его в древовидное представление. Можно также создать NSXMLDocument
программно. Существуют методы доступа для получения и установки атрибутов документа, методов для преобразования документов с помощью XSLT, метода для того, чтобы динамично проверить документ и методы для распечатывания содержания NSXMLDocument
как XML, XHTML, HTML или простой текст.
Класс NSXMLDocument ориентирован на многопотоковое исполнение, пока любой приведенный пример используется только в одном потоке.
Разделение на подклассы примечаний
Методы для переопределения
Разделять на подклассы NSXMLDocument
необходимо переопределить основной инициализатор, initWithData:options:error:
, и методы упоминаются ниже. В большинстве случаев Вы должны только вызвать реализацию суперкласса, добавляя любой специфичный для подкласса код прежде или после вызова, по мере необходимости.
По умолчанию NSXMLDocument
реализации NSObject
isEqual:
метод для выполнения глубокого сравнения: два NSXMLDocument
объекты не считают равными, если у них нет того же имени, тех же дочерних узлов, тех же атрибутов, и т.д. Сравнение не рассматривает родительский узел (и следовательно расположение узла). Если Вы хотите различный стандарт сравнения, переопределения isEqual:
.
Специальные замечания
Из-за архитектуры и модели данных NSXML, когда это анализирует и обрабатывает источник XML, это не может знать о Вашем подклассе, если Вы не переопределяете метод класса replacementClassForClass:
возвратить Ваш пользовательский класс вместо NSXML
класс. Если Ваш пользовательский класс имеет не прямой NSXML
дубликат — например, это - подкласс NSXMLNode
это представляет разделы CDATA — тогда можно обойти дерево после того, как оно было создано и вставляет новый узел, где это необходимо.
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCopying
-
NSObjectProtocol
-
Печатаемый
-
NSCopying
-
NSObject
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.4 и позже.
-
Инициализирует и возвращает объект NSXMLDocument, создаваемый из XML или содержимых HTML ССЫЛАЕМОГО URL источника
Объявление
Objective C
- (instancetype)initWithContentsOfURL:(NSURL *)
url
options:(NSUInteger)mask
error:(NSError **)error
Параметры
url
NSURL
объект, указывающий источник URL.mask
Немного маски для входных опций. Можно указать, что многократные опции укусили-OR'ing их. Посмотрите Константы для списка допустимых входных опций.
error
Ошибочный объект, что, по возврату, идентифицирует любые ошибки анализа и предупреждения или проблемы соединения.
Возвращаемое значение
Инициализированный
NSXMLDocument
объект, илиnil
если инициализация перестала работать из-за ошибок анализа или других причин.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
init (data:options:error:) - initWithData:options:error:
Определяемый инициализаторИнициализирует и возвращается
NSXMLDocument
объект, создаваемый изNSData
объект.Объявление
Objective C
- (instancetype)initWithData:(NSData *)
data
options:(NSUInteger)mask
error:(NSError **)error
Параметры
data
Объект данных с содержанием XML.
mask
Немного маски для входных опций. Можно указать, что многократные опции укусили-OR'ing их. Посмотрите Константы для списка допустимых входных опций.
error
Ошибочный объект, что, по возврату, идентифицирует любые ошибки анализа и предупреждения или проблемы соединения.
Возвращаемое значение
Инициализированный
NSXMLDocument
объект, илиnil
если инициализация перестала работать из-за ошибок анализа или других причин.Обсуждение
Этот метод является определяемым инициализатором для
NSXMLDocument
класс.Если Вы указываете
NSXMLDocumentTidyXML
как одна из опций, NSXMLDocument выполняет несколько операций по зачистке местности на документе XML (таких как удаление ведущих вкладок). Это действительно уважаетxml:space="preserve"
припишите, когда это попытается привести в порядок XML.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
init (rootElement:) - initWithRootElement:
Определяемый инициализаторВозвраты
NSXMLDocument
объект, инициализированный с единственным дочерним элементом, корневым элементом.Объявление
Swift
init!(rootElement
root
: NSXMLElement!)Objective C
- (instancetype)initWithRootElement:(NSXMLElement *)
root
Параметры
root
NSXMLElement
объект, представляющий элемент XML.Возвращаемое значение
Инициализированный
NSXMLDocument
объект, илиnil
если инициализация перестала работать по какой-либо причине.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Инициализирует и возвращается
NSXMLDocument
объект, создаваемый из строки, содержащей текст разметки XML.Объявление
Objective C
- (instancetype)initWithXMLString:(NSString *)
string
options:(NSUInteger)mask
error:(NSError **)error
Параметры
string
Строковый объект, содержащий текст разметки XML.
mask
Немного маски для входных опций. Можно указать, что многократные опции укусили-OR'ing их. Посмотрите Константы для списка допустимых входных опций.
error
Ошибочный объект, что, по возврату, идентифицирует любые ошибки анализа и предупреждения или проблемы соединения.
Возвращаемое значение
Инициализированный
NSXMLDocument
объект, илиnil
если инициализация перестала работать из-за ошибок анализа или других причин.Обсуждение
Кодирование документа установлено в UTF-8.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Переопределенный подклассами для заменения пользовательским классом класс NSXML, что использование синтаксического анализатора для создания экземпляров узла.
Объявление
Swift
class func replacementClassForClass(_
class
: AnyClass) -> AnyClass!Objective C
+ (Class)replacementClassForClass:(Class)
class
Параметры
class
A
Class
объект, идентифицирующий класс NSXML, который должен быть заменен Вашим пользовательским классом.Возвращаемое значение
Класс, которым заменяют.
Обсуждение
Например, если у Вас есть пользовательский подкласс
NSXMLElement
то, что Вы хотите использоваться вместоNSXMLElement
, Вы сделали бы следующее переопределение:+ (Class)replacementClassForClass:(Class)currentClass {
if ( currentClass == [NSXMLElement class] ) {
return [MyCustomElementClass class];
}
}
Этот метод вызывается, прежде чем документ анализируется. Класс, которым заменяют, должен быть подклассом
NSXMLNode
,NSXMLDocument
,NSXMLElement
,NSXMLDTD
, илиNSXMLDTDNode
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Возвращает кодировку символов, используемую для XML.
Объявление
Swift
var characterEncoding: String?
Objective C
@property(copy) NSString *characterEncoding
Возвращаемое значение
Кодировка символов, используемая для XML, или
nil
если не указано никакое кодирование.Обсуждение
Обычно кодирование указано в определении XML документа, обрабатывающегося, но это может быть установлено в любое время. Если указанное кодирование не соответствует фактическое кодирование, парсинг документа может перестать работать.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Устанавливает кодировку символов получателя к
encoding
,Объявление
Swift
var characterEncoding: String?
Objective C
@property(copy) NSString *characterEncoding
Параметры
encoding
Строка, указывающая кодирование; это должно соответствовать имя набора символов IANA. Посмотрите http://www .iana.org/assignments/character-sets для списка допустимых спецификаторов кодирования.
Обсуждение
Обычно кодирование указано в определении XML документа, обрабатывающегося, но это может быть установлено в любое время. Если указанное кодирование не соответствует фактическое кодирование, парсинг документа мог бы перестать работать.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Возвращает вид содержания документа для вывода.
Объявление
Swift
var documentContentKind: NSXMLDocumentContentKind
Objective C
@property NSXMLDocumentContentKind documentContentKind
Обсуждение
Большинство различий среди вида содержания имеет отношение к обработке тегов содержания меньше такой как
<br>
. Допустимые константы NSXMLDocumentContentKindNSXMLDocumentXMLKind
,NSXMLDocumentXHTMLKind
,NSXMLDocumentHTMLKind
, иNSXMLDocumentTextKind
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Устанавливает вид выходного содержания для получателя.
Объявление
Swift
var documentContentKind: NSXMLDocumentContentKind
Objective C
@property NSXMLDocumentContentKind documentContentKind
Параметры
kind
enum
постоянная идентификация своего рода содержания документа. Допустимые константы NSXMLDocumentContentKindNSXMLDocumentXMLKind
,NSXMLDocumentXHTMLKind
,NSXMLDocumentHTMLKind
, иNSXMLDocumentTextKind
.Обсуждение
Большинство различий среди вида содержания документа имеет отношение к обработке тегов содержания меньше такой как
<br>
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Возвраты
NSXMLDTD
объект, представляющий внутренний DTD, связался с получателем.Возвращаемое значение
NSXMLDTD
объект, представляющий внутренний DTD, связался с получателем илиnil
если не был связан никакой DTD.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Устанавливает внутренний DTD, который будет связан с получателем.
Объявление
Objective C
- (void)setDTD:(NSXMLDTD *)
documentTypeDeclaration
Параметры
documentTypeDeclaration
NSXMLDTD
объект, представляющий внутренний DTD, который будет связан с получателем.Обсуждение
Когда получатель выписан, это объявление типа документа появляется в выводе, сразу после определения XML.
Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.4 через OS X v10.9.
См. также
-
isStandalone - isStandalone
Доступный в OS X v10.4 через OS X v10.9Возвраты, представляет ли получатель автономный XML-документ — т.е. один без внешнего DTD.
Объявление
Objective C
- (BOOL)isStandalone
Возвращаемое значение
YES
true
если получатель представляет автономный XML-документ,NO
false
если «автономное» объявление не присутствовало в оригинале документа и не было установлено с тех пор.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.4 через OS X v10.9.
См. также
-
Устанавливает булево значение, указывающее, представляет ли получатель автономный XML-документ.
Объявление
Swift
var standalone: Bool
Objective C
@property(getter=isStandalone) BOOL standalone
Параметры
standalone
YES
true
если получатель представляет автономный XML-документ,NO
false
иначе.Обсуждение
Автономному документу не связывали внешний DTD с ним.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Возвращает тип MIME для получателя.
Возвращаемое значение
MIME вводит для получателя (например, «text/xml»).
Обсуждение
Типы MIME присваиваются IANA (см. http://www .iana.org/assignments/media-types/index.html).
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
setMIMEType: - setMIMEType:
Доступный в OS X v10.4 через OS X v10.9Устанавливает тип MIME получателя.
Объявление
Objective C
- (void)setMIMEType:(NSString *)
MIMEType
Параметры
MIMEType
Строковый объект идентификация типа MIME, например, «text/xml». Типы MIME присваиваются IANA (см. http://www .iana.org/assignments/media-types/index.html).
Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.4 через OS X v10.9.
См. также
-
Устанавливает URI, идентифицирующий источник этого документа.
Объявление
Objective C
- (void)setURI:(NSString *)
URI
Параметры
URI
Строковый объект представление источника URI, или
nil
удалить текущий URI.Обсуждение
Когда получатель инициализируется с помощью, этот атрибут автоматически установлен
initWithContentsOfURL:options:error:
.См. также
-
Возвращает версию XML получателя.
Возвращаемое значение
Версия XML получателя или
nil
если версия не имеет, установлены.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Устанавливает версию XML получателя.
Параметры
version
Строковый объект идентификация версии XML.
Обсуждение
В настоящее время версия должна быть или “1.0 “или «1.1».
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Возвращает корневой элемент получателя.
Возвращаемое значение
Корневой элемент получателя.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Установите корневой элемент получателя.
Объявление
Swift
func setRootElement(_
root
: NSXMLElement!)Objective C
- (void)setRootElement:(NSXMLElement *)
root
Параметры
root
NSXMLNode
объект, который должен быть корневым элементом.Обсуждение
Как побочный эффект, этот метод удаляет все другие дочерние элементы, включая
NSXMLNode
объекты, представляющие комментарии и инструкции обработки.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Добавляет дочерний узел после последнего из существующих дочерних элементов получателя.
Параметры
child
NSXMLNode
объект, который будет добавлен.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Вставляет объект узла в указанной позиции в массиве получателя дочерних элементов.
Объявление
Objective C
- (void)insertChild:(NSXMLNode *)
child
atIndex:(NSUInteger)index
Параметры
child
NSXMLNode
объект, который будет вставлен. Добавленный узел должен бытьNSXMLNode
объект, представляющий комментарий, обрабатывая инструкцию или корневой элемент.index
Целое число, указывающее индекс дочерних элементов, выстраивает для вставки
child
. Индексы дочерних элементов после нового дочернего элемента постепенно увеличиваются. Еслиindex
меньше, чем нуль или больше, чем число дочерних элементов, за пределы, исключение повышено.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Вставляет массив дочерних элементов в указанной позиции в массиве получателя дочерних элементов.
Объявление
Swift
func insertChildren(_
children
: [AnyObject], atIndexindex
: Int)Objective C
- (void)insertChildren:(NSArray *)
children
atIndex:(NSUInteger)index
Параметры
children
Массив
NSXMLNode
объекты, представляющие комментарии, обрабатывая инструкции или корневой элемент.index
Целое число, идентифицирующее расположение в дочерних элементах получателя, выстраивает для вставки. Индексы дочерних элементов после нового дочернего элемента увеличены
[children count
]. Еслиindex
меньше, чем нуль или больше, чем число дочерних элементов, за пределы, исключение повышено.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Удаляет дочерний узел получателя, расположенного в указанной позиции в ее массиве дочерних элементов.
Объявление
Swift
func removeChildAtIndex(_
index
: Int)Objective C
- (void)removeChildAtIndex:(NSUInteger)
index
Параметры
index
Целое число, идентифицирующее позицию дочернего элемента в массиве получателя. Если
index
меньше, чем нуль или больше, чем число дочерних элементов минус один, за пределы, исключение повышено.Обсуждение
Последующим дочерним элементам уменьшил их индексы один. Удаленный
NSXMLNode
объект автовыпущен.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Заменяет дочерний узел получателя, расположенного в указанной позиции в ее массиве дочерних элементов с другим узлом.
Объявление
Objective C
- (void)replaceChildAtIndex:(NSUInteger)
index
withNode:(NSXMLNode *)node
Параметры
index
Целое число, идентифицирующее позицию в массиве получателя дочерних элементов. Если
index
меньше, чем нуль или больше, чем число дочерних элементов минус один, за пределы, исключение повышено.node
NSXMLNode
возразите для замены того вindex
; это должно представлять комментарий, инструкцию обработки или корневой элемент.Обсуждение
Удаленный
NSXMLNode
объект автовыпущен.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Устанавливает дочерние узлы получателя.
Объявление
Swift
func setChildren(_
children
: [AnyObject]?)Objective C
- (void)setChildren:(NSArray *)
children
Параметры
children
Массив
NSXMLNode
объекты. Каждый из этих объектов должен представлять комментарии, обрабатывая инструкции или корневой элемент; иначе, исключение повышено. Передача вnil
удалить все дочерние элементы.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Применяет правила образца XSLT и шаблоны (указанный как объект данных) к получателю и возвращается, объект документа, содержащий, преобразовал XML или разметку HTML.
Объявление
Swift
func objectByApplyingXSLT(_
xslt
: NSData, argumentsarguments
: [NSObject : AnyObject]?, errorerror
: NSErrorPointer) -> AnyObject?Objective C
- (id)objectByApplyingXSLT:(NSData *)
xslt
arguments:(NSDictionary *)arguments
error:(NSError **)error
Параметры
xslt
Объект данных, содержащий правила образца XSLT и шаблоны.
arguments
Словарь, содержащий
NSString
пары ключ/значение, передающиеся как параметры периода выполнения процессору XSLT. Передача вnil
если у Вас нет параметров для передачи.error
Если ошибка происходит, косвенно возвраты
NSError
объект, инкапсулирующий сообщения об ошибках или предупреждающие сообщения, сгенерирован обработкой XSLT.Возвращаемое значение
В зависимости от намеченного вывода метод возвращается
NSXMLDocument
возразите илиNSData
данные, содержащие, преобразовали XML или разметку HTML. Если сообщение, как предполагается, создает простой текст или RTF, тоNSData
объект возвращается, иначе объект XML-документа. Возвраты методаnil
если не успешно выполнялась обработка XSLT.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Применяет правила образца XSLT и шаблоны (указанный как строка) к получателю и возвращается, объект документа, содержащий, преобразовал XML или разметку HTML.
Объявление
Swift
func objectByApplyingXSLTString(_
xslt
: String, argumentsarguments
: [NSObject : AnyObject]?, errorerror
: NSErrorPointer) -> AnyObject?Objective C
- (id)objectByApplyingXSLTString:(NSString *)
xslt
arguments:(NSDictionary *)arguments
error:(NSError **)error
Параметры
xslt
Строковый объект, содержащий правила образца XSLT и шаблоны.
arguments
Словарь, содержащий
NSString
пары ключ/значение, передающиеся как параметры периода выполнения процессору XSLT. Передача вnil
если у Вас нет параметров для передачи.error
Если ошибка происходит, косвенно возвраты
NSError
объект, инкапсулирующий сообщения об ошибках или предупреждающие сообщения, сгенерирован обработкой XSLT.Возвращаемое значение
В зависимости от намеченного вывода метод возвращается
NSXMLDocument
возразите илиNSData
данные, содержащие, преобразовали XML или разметку HTML. Если сообщение, как предполагается, создает простой текст или RTF, тоNSData
объект возвращается, иначе объект XML-документа. Возвраты методаnil
если не успешно выполнялась обработка XSLT.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Применяет правила образца XSLT и обрабатывает по шаблону расположенный в указанном URL к получателю и возвращает объект документа, содержащий преобразованную разметку XML или
NSData
объект, содержащий простой текст, текст RTF, и т.д.Объявление
Swift
func objectByApplyingXSLTAtURL(_
xsltURL
: NSURL, argumentsarguments
: [NSObject : AnyObject]?, errorerror
: NSErrorPointer) -> AnyObject?Objective C
- (id)objectByApplyingXSLTAtURL:(NSURL *)
xsltURL
arguments:(NSDictionary *)arguments
error:(NSError **)error
Параметры
xsltURL
NSURL
объект, указывающий допустимый URL.arguments
Словарь, содержащий
NSString
пары ключ/значение, передающиеся как параметры периода выполнения процессору XSLT. Передача вnil
если у Вас нет параметров для передачи.error
Если ошибка происходит, косвенно возвраты
NSError
объект, инкапсулирующий сообщения об ошибках или предупреждающие сообщения, сгенерированные обработкой XSLT или от попытки соединиться с веб-сайтом, идентифицированным URL.Возвращаемое значение
В зависимости от намеченного вывода, возвратов
NSXMLDocument
возразите илиNSData
данные, содержащие, преобразовали XML или разметку HTML. Если сообщение, как предполагается, создает простой текст или RTF, тоNSData
объект возвращается, иначе объект XML-документа. Возвраты методаnil
если не успешно выполнялась обработка XSLT.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Возвращает строковое представление XML получателя — т.е. весь документ — инкапсулировавший в объекте данных.
Объявление
Swift
@NSCopying var XMLData: NSData { get }
Objective C
@property(readonly, copy) NSData *XMLData
Обсуждение
Этот метод вызывает
XMLDataWithOptions:
с опциейNSXMLNodeOptionsNone
. Используемое кодирование основывается на значении, возвращенном изcharacterEncoding
или UTF-8, если никакое допустимое кодирование не возвращается тем методом.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Возвращает строковое представление XML получателя — т.е. весь документ — инкапсулировавший в объекте данных.
Объявление
Objective C
- (NSData *)XMLDataWithOptions:(NSUInteger)
options
Параметры
options
Одна или более опций (укусил-OR'd если многократный) влиять на вывод документа; посмотрите Константы для допустимых выходных опций.
Обсуждение
Используемое кодирование основывается на значении, возвращенном из
characterEncoding
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Проверяет документ против управляющей схемы и возвращается, соответствует ли документ схеме.
Объявление
Swift
func validateAndReturnError(_
error
: NSErrorPointer) -> BoolObjective C
- (BOOL)validateAndReturnError:(NSError **)
error
Параметры
error
Если сбои проверки, по возврату содержит
NSError
объект, описывающий причину или причины отказа.Возвращаемое значение
YES
true
если работа проверки успешно выполнилась, иначеNO
false
.Обсуждение
Константы, указывающие вид ошибок проверки, испускаются базовым синтаксическим анализатором; посмотрите
NSXMLParser.h
для большинства этих констант. Если схема определяется с помощью DTD, этот метод используетNSXMLDTD
объектный набор для получателя для проверки. Если схема основывается на XML-схеме, метод использует URL, указанный как значениеxsi:schemaLocation
атрибут корневого элемента.Можно проверить XML-документ, когда он сначала обрабатывается путем указания
NSXMLDocumentValidate
опция, когда Вы инициализируетеNSXMLDocument
объект сinitWithContentsOfURL:options:error:
,initWithData:options:error:
, илиinitWithXMLString:options:error:
методы.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
Типы данных
-
Введите используемый для определения вида содержания документа.
Объявление
Swift
enum NSXMLDocumentContentKind : UInt { case XMLKind case XHTMLKind case HTMLKind case TextKind }
Objective C
typedef NSUInteger NSXMLDocumentContentKind;
Обсуждение
Для возможных значений посмотрите Типы контента Документа.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Опции ввода и вывода, в частности предназначенные для
NSXMLDocument
объекты.Объявление
Swift
var NSXMLDocumentTidyHTML: UInt32 { get } var NSXMLDocumentTidyXML: UInt32 { get } var NSXMLDocumentValidate: UInt32 { get } var NSXMLDocumentXInclude: UInt32 { get } var NSXMLDocumentIncludeContentTypeDeclaration: UInt32 { get }
Objective C
NSXMLDocumentTidyHTML = 1 << 9, NSXMLDocumentTidyXML = 1 << 10, NSXMLDocumentValidate = 1 << 13, NSXMLDocumentXInclude = 1 << 16, NSXMLDocumentIncludeContentTypeDeclaration = 1 << 18,
Константы
-
NSXMLDocumentTidyHTML
NSXMLDocumentTidyHTML
Форматы HTML в допустимый XHTML во время обработки документа.
При уборке,
NSXMLDocument
добавляет разрыв строки перед близким тегом элемента блочного уровня (<p>
,<div>
,<h1>
, и т.д.); это также делает строковое значение<br>
или<hr>
разрыв строки. Эти операции делают строковое значение HTML<body>
более читаемый. После использования этой опции избегите выводить документ как что-либо кроме вида по умолчанию,NSXMLDocumentXHTMLKind
.(Ввод)
Доступный в OS X v10.4 и позже.
-
NSXMLDocumentTidyXML
NSXMLDocumentTidyXML
Изменяет уродливый XML в допустимый XML во время обработки документа.
Это также устраняет «довольно распечатывающее» форматирование, такое как продвижение символов табуляции. Это действительно уважает
xml:space="preserve"
атрибут.(Ввод)
Доступный в OS X v10.4 и позже.
-
NSXMLDocumentValidate
NSXMLDocumentValidate
Проверяет этот документ против его DTD (внутренний или внешний) или XML-схема.
(Ввод)
Доступный в OS X v10.4 и позже.
-
NSXMLDocumentXInclude
NSXMLDocumentXInclude
Замены все узлы XInclude в документе с именуемыми узлами.
XInclude позволяет клиентам включать части другого XML-документа в документе.
(Ввод)
Доступный в OS X v10.4 и позже.
-
NSXMLDocumentIncludeContentTypeDeclaration
NSXMLDocumentIncludeContentTypeDeclaration
Включает объявление типа контента для HTML или XHTML в выводе документа.
(Вывод)
Доступный в OS X v10.4 и позже.
Обсуждение
Поскольку
NSXMLDocument
подклассNSXMLNode
, можно также использовать соответствующие опции ввода и вывода, описанные в Константах вNSXMLNode
ссылка класса. Можно указать входные опции вNSXMLDocument
методыinitWithContentsOfURL:options:error:
,initWithData:options:error:
,initWithXMLString:options:error:
.XMLDataWithOptions:
метод выбирает выходные варианты. -
-
Определите типы документов.
Объявление
Swift
enum NSXMLDocumentContentKind : UInt { case XMLKind case XHTMLKind case HTMLKind case TextKind }
Objective C
enum { NSXMLDocumentXMLKind = 0, NSXMLDocumentXHTMLKind, NSXMLDocumentHTMLKind, NSXMLDocumentTextKind };
Константы
-
XMLKind
NSXMLDocumentXMLKind
Тип по умолчанию типа контента документа, который является XML.
Доступный в OS X v10.4 и позже.
-
XHTMLKind
NSXMLDocumentXHTMLKind
Вывод документа является XHTML.
Это установлено автоматически если
NSXMLDocumentTidyHTML
опция установлена, и NSXML обнаруживает HTML.Доступный в OS X v10.4 и позже.
-
HTMLKind
NSXMLDocumentHTMLKind
Выводы пустые теги в HTML без близкого тега, такой как
<br>
.Доступный в OS X v10.4 и позже.
-
TextKind
NSXMLDocumentTextKind
Выводит строковое значение документа путем извлечения строковых значений из всех текстовых узлов.
Доступный в OS X v10.4 и позже.
Обсуждение
Вы указываете одну из констант NSXMLDocumentContentKind в
setDocumentContentKind:
указать вид содержания, требуемого для вывода документа. -