Глоссарий XML
Этот глоссарий определяет некоторые условия, определенные для XML, DTD, и связанных спецификаций и технологий. Это фокусируется прежде всего на условиях, которые являются частью имен методов и констант, объявленных NSXMLParser, NSXMLNode, NSXMLDocument, NSXMLElement, NSXMLDTD и классами NSXMLDTDNode.
Значение с простым типом, как определено стандартом XML-схемы. Типы включают строку, десятичное число, целое число, плавание, дважды, булевскую переменную, дату, URI, массив и двоичных данных. Запрос XQuery возвращает последовательность элементов, которые могут содержать один или несколько узлов или атомарные значения.
Свойство элемента, выраженного как пара значение-имя. Атрибуты используются, чтобы закодировать данные или обеспечить метаданные, связанные с элементом. В следующем примере «версия» является именем атрибута элемента
plist
и его значение“1.0”
:<plist version=”1.0”>
Идентифицирует в DTD элемент, имеющий атрибуты, имена тех атрибутов, что оценивает атрибуты, могут иметь, и значения по умолчанию. Пример:
<!ATTLIST phone location (home | office | mobile) "home">
В этом примере,
phone
имя элемента,location
название атрибута,(home | office | mobile)
допустимые значения, иhome
значение по умолчанию.Форма XML-документа, в котором это может быть сравнено с другим документом для эквивалентности. Если два документа с отличающимися физическими представлениями имеют ту же каноническую форму, их считают логически эквивалентными в данном контексте приложения. Каноническая форма XML-документа определяется Консорциумом World Wide Web в
http://www.w3.org/TR/xml-c14n
.Раздел текста, который синтаксический анализатор должен передать неинтерпретируемый клиентскому приложению. Это появляется как содержание элемента. Блоки CDATA часто используются для кода или данных, содержащих «запрещенные» символы, который является символами специального синтаксического значения для синтаксического анализатора (например, “<“и “&\”). Можно также использовать ссылку на сущность на экспресс любой из этих запрещенных символов (например,
<
) встроенная ссылка на сущность для указания «завершенного»<
символ.Часть объявления элемента, определяющего то, что может содержать элемент. Модель содержания состоит из имен дочерних элементов,
#PCDATA
(указание текста), ссылки на сущность, илиEMPTY
(указание пустого элемента такой как<true/>
). Дочерние элементы и#PCDATA
включаются в круглых скобках. Запятые между дочерними элементами указывают, что элементы должны произойти в данной последовательности. Символ вертикальной панели (“|”) вместо запятой указывает логическое отношение OR и может использоваться с#PCDATA
. Модификаторы возникновения могут быть применены к отдельным элементам или группам элементов:«+» указывает элемент, или группа может быть повторена несколько раз, но должна произойти в арендном договоре один раз.
«?» указывает элемент, или группа является дополнительной и может произойти только один раз.
«*» указывает элемент, или группа является дополнительной и может произойти несколько раз.
Никакой модификатор не указывает, что элемент или группа должны произойти только один раз.
Примеры моделей содержания.
(#PCDATA)
(%plistObject)*
(lastName, middleInitial?, firstName, phone*)*
Порядок разметки XML создает, поскольку они появляются в документе. Когда Вы отправляете сообщения NSXMLNode
nextNode
(илиpreviousNode
) к каждому последовательному объекту узла, с которым встречаются в дереве NSXML, Вы пересекаете дерево вперед (или назад) в порядке документа.API для доступа и управления XML-документами как древовидные структуры. DOM происходит из рекомендации Консорциума World Wide Web для общей объектной модели для того, чтобы хранить иерархически структурированные документы в памяти.
Способ определить юридические элементы и другие стандартные блоки XML-документа.
Теги разметки, идентифицирующие природу содержания, которое они окружают. Элементы имеют имена и могут содержать текстовые данные, дочерние элементы, обрабатывая инструкции, комментарии и блоки CDATA. Элемент имеет элемент родителя-одиночки, за исключением корневого элемента документа, не имеющего никакого родителя. Элемент может также иметь атрибуты и префиксы пространства имен, связанные с ним. Элементы могут также быть пустыми (т.е. без содержания), и разработчик может использовать их в качестве флагов.
Следующее является примером элемента с атрибутом и смешало содержание (в этом случае, текст, дочерний элемент и блок CDATA):
<para ref_num=”80458”>
The following C++ code gives an example of how
<code>cout</code> is used:
<![CDATA[std::cout << "Hello, World!\n";
>
</para>
Указывает в DTD имя элемента и что разрешено как содержание элемента. Объявление может указать дочерние элементы, текст и ссылки на сущность как содержание. Это предписывает порядок дочерних элементов и (для единственных элементов или для всей группы), требуется ли и может ли это появиться многократно. Примеры:
<!ELEMENT addresses (person)*>
<!ELEMENT person (lastName, firstName, phone*, email*, address*)>
<!ELEMENT lastName (#PCDATA)>
См. также модель содержания.
Партнеры в DTD имя с некоторой частью содержания XML, идентифицирующегося ссылкой на сущность. То содержание может быть литеральным значением (такой, как идентифицировано символьной ссылкой), значение переменной, указанное в другом месте в DTD или некотором текстовом или двоичном значении, на которое ссылаются во внешнем файле. Последний тип объекта вызывают внешним объектом. Примеры:
<!ENTITY % plistObject “(array | date | dict | real | integer | string | true | false )” >
<!ENTITY CompanyLogo SYSTEM “/Library/Images/logo.gif” NDATA GIF87A>
Ссылка в тексте к внешне или внутренне объявленное объявление сущности. Это должно начаться с амперсанда и закончиться точкой с запятой. Можно обратиться к объектам, которые Вы объявляете в другом месте. Существует пять предопределенных объектов: “<“, “>”, “&\”, символ одинарной кавычки и символ двойной кавычки. Символьные ссылки запускаются с “&#\” и сопровождаются числовыми кодовыми точками. Примеры ссылок
'
,>
,ç
; первые два являются встроенными ссылками на сущность, и последней является символьная ссылка. См. также непроанализированный объект.Посмотрите модель содержания.
URI (Универсальный Идентификатор ресурса), который квалифицирует элемент или название атрибута, чтобы избежать конфликтов имен, когда документ содержит XML из других источников. Вы объявляете пространство имен в теге запуска элемента путем добавления префикса к предопределенному
xmlns
атрибут (разделенный двоеточием), и затем связывающий это со значением URI; например:<h:table xmlns:h="http://www.w3.org/TR/html4/">
После того Вы должны только использовать префикс пространства имен («h» в вышеупомянутом примере) с элементом (разделенный двоеточием) для идентификации элемента однозначно. Все дочерние элементы элемента с объявлением пространства имен связаны с тем же пространством имен через префикс. Комбинация префиксного имени элемента (
h:table
от примера выше), вызывается полностью определенным именем. Объявление пространства имен без префикса послеxmlns
определяет пространство имен по умолчанию, если значение не является пустой строкой, что не означает “пространства имен”. URI в объявлении пространства имен ни на что не должен указывать; это - просто удобный способ получить уникальное имя.Префикс, определенный в объявлении пространства имен для идентификации пространства имен определенный элемент, связан с. Полностью определенное имя пространства имен (
xmlns:
localname), появляется только во время вывода. Все другие операции, такие как те, которые получают или устанавливают значение узла пространства имен, используют локальное имя только. См. также пространство имен.Объединить все смежные узлы дочернего текста в единственный текстовый узел при удалении пустых текстовых узлов. Нормализация настоятельно рекомендована прежде, чем выполнить запросы XQuery и XPath.
Идентифицирует по имени формат или непроанализированного объекта или элемента, переносящего определенный атрибут нотации; это может также идентифицировать цель инструкции обработки. Объявление нотации дает имя к нотации и внешнему идентификатору, позволяющему синтаксическому анализатору или его клиенту определить местоположение вспомогательного приложения, которое может обработать данные, указанные нотацией. Нотации происходят в значениях атрибута, объявлениях списка атрибутов и объявлениях сущности.
Конструкция, предоставляющая информацию приложению, обрабатывающему XML-документ. Инструкции могли сообщить приложению как, например, чтобы интерпретировать XML или вывести на экран результаты. Обработка инструкций может произойти в элементах или на верхнем уровне документа. Первое слово инструкции обработки вызывают, цель (ее имя) и все остальное является своим объектным значением. Пример:
<?sort alpha-ascending?>
Полное имя элемента, состоя из префикса, двоеточия и локального имени. См. также пространство имен.
Набор элементов, каждый из которых может быть узлом или атомарным значением. Запросы XQuery возвращают последовательность (NSArray в Какао), который может содержать только единственный элемент.
Процедура, проверяющая XML-документ по логической структуре, описанной объявлениями в связанном DTD (или другая схема), чтобы видеть, соответствует ли XML ему. Некоторые ограничения, вовлеченные в проверку, являются надлежащей последовательностью элемента и вложением, спецификацией требуемых атрибутов, и исправляют тип атрибута. Например, если элемент, как предполагается, имеет один или несколько дочерних элементов, но не делает, документ, содержащий элемент, недопустим. Прежде чем XML-документ может быть проверен, это должно сначала быть правильно построено.
Внешний ресурс, именуемый ссылкой на сущность, содержание которой может быть двоичными данными или текстом (включая текст не XML). Каждому непроанализированному объекту связали нотацию с ним.
Обращается к XML-документу, повинующемуся синтаксису XML. Если его XML не правильно построен, синтаксический анализатор не может проанализировать документ. Некоторые проверки на то, правильно построен ли документ:
Элемент запускается, теги должны иметь конечные тэги (за исключением пустых элементов).
Значения атрибута должны быть заключены в кавычки.
Сущность параметра должна быть объявлена, прежде чем они будут использоваться.
Конструкции разметки кажутся только там, где разрешенными.
Более строго предписанная версия HTML, делающего его правильно построенным XML. XHTML является официальной рекомендацией Консорциума World Wide Web.
Язык запросов XML для определения местоположения узлов с древовидной структурой XML. Это позволяет пути расположения, предикаты и общие выражения в запросах. Реализация Какао использует XPath 2.0, который является рекомендацией Консорциума World Wide Web. Класс NSXMLNode включает запросы XPath через
nodesForXPath:error:
метод. (Обратите внимание на то, что классы NSXML не поддерживают устаревшие (deprecated) функции XPath 1.0, такие как ось пространства имен.)Гибкий и мощный язык запросов XML, позволяющий Вам составить логически сложные запросы с помощью операторов, кванторов, функций и выражений FLOWR (относящийся к ключевым словам
for
,let
,order by
,where
, иreturn
). Класс NSXMLNode включает запросы XQuery 1.0 черезobjectsForXQuery:error:
методПриложение XML для преобразования XML-документа в другой XML-документ или в HTML, RTF или документ простого текста. Таблица стилей, используемая в трансформации, имеет шаблонные правила, каждый состоящий из образца и шаблона. Класс NSXMLDocument разрешает доступ к XSLT через
objectByApplyingXSLT:error:
иobjectByApplyingXSLTAtURL:error:
методы.
- атомарное значение
- атрибут
- объявление списка атрибутов
- канонический
- Блок CDATA
- модель содержания
- порядок документа
- DOM (объектная модель документа)
- DTD (определение типа документа)
- элемент
- объявление элемента
- объявление сущности
- объект и символьная ссылка
- модель
- пространство имен
- префикс пространства имен
- нормализовать
- нотация
- обработка инструкции
- полностью определенное имя
- последовательность
- проверка
- непроанализированный объект
- правильно построенный
- XHTML
- XPath
- XQuery
- XSLT (трансформации расширяемого языка таблиц стилей)