- •XML DTD и Пространства имён
- •Цели занятия
- •документа – Document Type Definition
- •Зачем использовать DTD
- •Структура DTD
- •Объявление Элемента
- •Пустой элемент
- •Элементы с данными
- •Элементы
- •соответствии с частотой появления элементов
- •Объявление смешанного содержания
- •Объявление атрибутов
- •Атрибут (атрибут – типы значений)
- •Атрибут (атрибут – значение по умолчанию)
- •Внутреннее определение DTD
- •Внешнее определение DTD
- •Объявление внутреннего примитива
- •Объявление внешнего примитива
- •Пространства имён XML – 1
- •XML Namespaces - 2
- •Need of a Namespace
- •Синтаксис для пространства имён – 1
- •Атрибуты и пространства имён
- •Пространства имён в приложениях
- •использования пространства имён
- •Подведение итогов
Need of a Namespace
Пространства имён используются для устранения конфликта, который может возникать при повторном использовании DTD и его расширении
Помогают стандартизировать и однозначно маркировать элементы и атрибуты.
Пространства имён пользуются URI для передачи инструкций агенту пользователя для того, чтобы найти DTD, по которому документ XML проверяется на корректность
Пространства имён гарантируют отсутствие конфликтов в именах элементов, а также уточняют их происхождение
Синтаксис для пространства имён – 1
С идентификатором URI связан префикс, который может быть использован в качестве пространства имён
Синтаксис
xmlns:[prefix]= “[URI of namespace]”
xmlns: является зарезервированным атрибутом
Пример
xmlns:ins= “http://www.Aptech_edu.ac”
пространство имён должно быть объявлено до того, как оно начинает использоваться
Оно объявляется в корневом элементе документа
Атрибуты и пространства имён
Атрибуты относятся к пространству имён своего элемента, если только они не снабжены префиксом
Атрибуты из двух доменов могут быть включены в
документ XML
<sample
xmlns= “http://www.Aptech_edu.ac” xmlns:tea_batch= “http://www.tea.org”> <batch-list>
<batch type= “thirdbatch”>Evening Batch</batch>
<batch tea_batch:type= “thirdbatch”>Tea batch III </batch> <batch>Afternoon Batch</batch>
</batch-list> </sample>
Пространства имён в приложениях
Новый синтаксис XSL использует пространства имён для идентификации как своих собственных тэгов, так и тэгов из словаря форматирования
Префикс xsl: в пространстве имён http//www.w3.org/TR/WD-xsl
Префикс fo: в пространстве имён http//www.w3.org/TR/WD-xsl/FO
XSL написан в синтаксисе XML, и использует тэги, элементы и атрибуты
использования пространства имён
<book xmlns:html= “http//www.w3.org/TR/WD- xsl/FO”>
<index>
<chapter>this is chapter 1</chapter> <html:br/>
<chapter>this is chapter 1</chapter>
</index>
</book>
Подведение итогов
DTD задаёт грамматическую структуру документа XML, тем самым позволяя синтаксическим анализаторам XML понять и интерпретировать содержание документа.
Использование ключевого слова SYSTEM сообщает синтаксическому анализатору, что это внешнее объявление, а, следовательно, набор правил, которые требуется соблюдать в данном документе XML, можно найти в указанном файле.
пустой (EMPTY) элемент тип содержимого определяет, что данный элемент не имеет ни элементов потомков, ни символьных данных.
#CDATA означает, что этот элемент содержит символьные данные, которые не обрабатываются синтаксическим анализатором.
#PCDATA означает, что элемент содержит данные, которые должны быть обработаны синтаксическим анализатором.
Пространства имён позволяют:
комбинировать документы из различных источников и обеспечивают идентификацию источника элементов и атрибутов.
обеспечивают доступ пользовательского агента к такой информации, как DTD или другие описания элементов и атрибутов.