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 *)urloptions:(NSUInteger)maskerror:(NSError **)errorПараметры
urlNSURLобъект, указывающий источник 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 *)dataoptions:(NSUInteger)maskerror:(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!(rootElementroot: NSXMLElement!)Objective C
- (instancetype)initWithRootElement:(NSXMLElement *)rootПараметры
rootNSXMLElementобъект, представляющий элемент XML.Возвращаемое значение
Инициализированный
NSXMLDocumentобъект, илиnilесли инициализация перестала работать по какой-либо причине.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.4 и позже.
-
Инициализирует и возвращается
NSXMLDocumentобъект, создаваемый из строки, содержащей текст разметки XML.Объявление
Objective C
- (instancetype)initWithXMLString:(NSString *)stringoptions:(NSUInteger)maskerror:(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Параметры
classA
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: NSXMLDocumentContentKindObjective C
@property NSXMLDocumentContentKind documentContentKindОбсуждение
Большинство различий среди вида содержания имеет отношение к обработке тегов содержания меньше такой как
<br>. Допустимые константы NSXMLDocumentContentKindNSXMLDocumentXMLKind,NSXMLDocumentXHTMLKind,NSXMLDocumentHTMLKind, иNSXMLDocumentTextKind.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Устанавливает вид выходного содержания для получателя.
Объявление
Swift
var documentContentKind: NSXMLDocumentContentKindObjective C
@property NSXMLDocumentContentKind documentContentKindПараметры
kindenumпостоянная идентификация своего рода содержания документа. Допустимые константы 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Параметры
documentTypeDeclarationNSXMLDTDобъект, представляющий внутренний 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Возвращаемое значение
YEStrueесли получатель представляет автономный XML-документ,NOfalseесли «автономное» объявление не присутствовало в оригинале документа и не было установлено с тех пор.Оператор импорта
Objective C
@import Foundation;Доступность
Доступный в OS X v10.4 через OS X v10.9.
См. также
-
Устанавливает булево значение, указывающее, представляет ли получатель автономный XML-документ.
Объявление
Swift
var standalone: BoolObjective C
@property(getter=isStandalone) BOOL standaloneПараметры
standaloneYEStrueесли получатель представляет автономный XML-документ,NOfalseиначе.Обсуждение
Автономному документу не связывали внешний 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Параметры
rootNSXMLNodeобъект, который должен быть корневым элементом.Обсуждение
Как побочный эффект, этот метод удаляет все другие дочерние элементы, включая
NSXMLNodeобъекты, представляющие комментарии и инструкции обработки.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.4 и позже.
См. также
-
Добавляет дочерний узел после последнего из существующих дочерних элементов получателя.
Параметры
childNSXMLNodeобъект, который будет добавлен.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.4 и позже.
-
Вставляет объект узла в указанной позиции в массиве получателя дочерних элементов.
Объявление
Objective C
- (void)insertChild:(NSXMLNode *)childatIndex:(NSUInteger)indexПараметры
childNSXMLNodeобъект, который будет вставлен. Добавленный узел должен быть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 *)childrenatIndex:(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)indexwithNode:(NSXMLNode *)nodeПараметры
indexЦелое число, идентифицирующее позицию в массиве получателя дочерних элементов. Если
indexменьше, чем нуль или больше, чем число дочерних элементов минус один, за пределы, исключение повышено.nodeNSXMLNodeвозразите для замены того в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 *)xsltarguments:(NSDictionary *)argumentserror:(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 *)xsltarguments:(NSDictionary *)argumentserror:(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 *)xsltURLarguments:(NSDictionary *)argumentserror:(NSError **)errorПараметры
xsltURLNSURLобъект, указывающий допустимый 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объект, описывающий причину или причины отказа.Возвращаемое значение
YEStrueесли работа проверки успешно выполнилась, иначеNOfalse.Обсуждение
Константы, указывающие вид ошибок проверки, испускаются базовым синтаксическим анализатором; посмотрите
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,Константы
-
NSXMLDocumentTidyHTMLNSXMLDocumentTidyHTMLФорматы HTML в допустимый XHTML во время обработки документа.
При уборке,
NSXMLDocumentдобавляет разрыв строки перед близким тегом элемента блочного уровня (<p>,<div>,<h1>, и т.д.); это также делает строковое значение<br>или<hr>разрыв строки. Эти операции делают строковое значение HTML<body>более читаемый. После использования этой опции избегите выводить документ как что-либо кроме вида по умолчанию,NSXMLDocumentXHTMLKind.(Ввод)
Доступный в OS X v10.4 и позже.
-
NSXMLDocumentTidyXMLNSXMLDocumentTidyXMLИзменяет уродливый XML в допустимый XML во время обработки документа.
Это также устраняет «довольно распечатывающее» форматирование, такое как продвижение символов табуляции. Это действительно уважает
xml:space="preserve"атрибут.(Ввод)
Доступный в OS X v10.4 и позже.
-
NSXMLDocumentValidateNSXMLDocumentValidateПроверяет этот документ против его DTD (внутренний или внешний) или XML-схема.
(Ввод)
Доступный в OS X v10.4 и позже.
-
NSXMLDocumentXIncludeNSXMLDocumentXIncludeЗамены все узлы XInclude в документе с именуемыми узлами.
XInclude позволяет клиентам включать части другого XML-документа в документе.
(Ввод)
Доступный в OS X v10.4 и позже.
-
NSXMLDocumentIncludeContentTypeDeclarationNSXMLDocumentIncludeContentTypeDeclarationВключает объявление типа контента для 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 };Константы
-
XMLKindNSXMLDocumentXMLKindТип по умолчанию типа контента документа, который является XML.
Доступный в OS X v10.4 и позже.
-
XHTMLKindNSXMLDocumentXHTMLKindВывод документа является XHTML.
Это установлено автоматически если
NSXMLDocumentTidyHTMLопция установлена, и NSXML обнаруживает HTML.Доступный в OS X v10.4 и позже.
-
HTMLKindNSXMLDocumentHTMLKindВыводы пустые теги в HTML без близкого тега, такой как
<br>.Доступный в OS X v10.4 и позже.
-
TextKindNSXMLDocumentTextKindВыводит строковое значение документа путем извлечения строковых значений из всех текстовых узлов.
Доступный в OS X v10.4 и позже.
Обсуждение
Вы указываете одну из констант NSXMLDocumentContentKind в
setDocumentContentKind:указать вид содержания, требуемого для вывода документа. -
