
- •Лекция 401
- •Компоненты документа
- •Язык SGML
- •Язык HTML. Термины
- •Язык HTML. Недостатки
- •Язык HTML. Преодоление недостатков
- •Язык XML. Задачи, поставленные при разработке
- •Язык XML. Спецификации
- •Общие компоненты технологии XML
- •Основные классы задач с использованием XML. 1. Создание новых языков
- •Основные классы задач с использованием XML. 2. Хранение данных
- •Основные классы задач с использованием XML. 3. Обмен данными и интеграция данных (1)
- •Основные классы задач с использованием XML. 3. Обмен данными и интеграция данных (2)
- •Документ XML. Имя XML
- •Документ XML. Пробельные символы и литералы
- •Документ XML. Представления структуры
- •Документ XML. Компоненты разметки
- •Документ XML. Пролог
- •Документ XML. Атрибуты пролога
- •Документ XML.
- •Документ XML. Атрибуты и содержимое элементов
- •Документ XML. Содержимое элемента
- •Документ XML. Инструкция по обработке
- •Документ XML. Секции CDATA
- •Документ XML. Ссылки на символы
- •Документ XML. Ссылки на сущности - 1
- •Документ XML. Ссылки на сущности - 2
- •Документ XML. Комментарии
- •Пространства имен XML - 1
- •Пространства имен XML - 2
- •Пространства имен XML - 3
- •Пространства имен XML - 4
- •Пространства имен XML - 5
- •Пространства имен XML - 6
- •Пространства имен XML - 7
- •Пространства имен XML - 8

Документ XML. Атрибуты и содержимое элементов
В языке XML атрибуты всегда должны иметь значения.
Пример.
Атрибут selected в начальном теге элемента option:
XML некорректно, поскольку ему не присвоено значение (в HTML такое определение является вполне нормальным).
Корректная запись тега:
<option selected="selected"> |
с фиксированным |
|
значением. |
||
|
В XML один элемент не может иметь атрибуты с одинаковыми именами. Вместе с тем, значение атрибута может содержать ссылки на символы.
21

Документ XML. Содержимое элемента
Содержимое элемента может состоять:
из других элементов (elements);
ссылок (references);
секций символьных данных (CDSections);
инструкции по обработке (PI);
комментариев (Comment),
<message to="you@yourAddress.com" from="me@myAddress.com" subject="Поздравление">
<text>
Поздравляю с днем рождения! </text>
</message>

Документ XML. Инструкция по обработке
ВXML-документы могут быть включены не относящиеся к содержимому документа инструкции, несущие информацию для приложения, которое бу дет этот документ обрабатывать. Инструкции по обработке имеют вид:
<?приложение содержимое?>
Первая часть инструкции, приложение, определяет программу или систему, которой предназначена вторая часть, ее содержимое.
Имя приложения может быть любым именем XML (кроме "xml" в любом регистре символов).
Пример:
<?serv cache-document?>
Целевое приложение имеет имя "serv", а сама инструкция может быть интерпретирована как указание серверу на то, что документ нужно сохранить в кэш-памяти.
23

Документ XML. Секции CDATA
Секции CDATA выделяют части документа, внутри которых текст не должен восприниматься как разметка и могут задаваться в тех местах документа, в которых размещается текст. Секции CDATA задаются следующим образом:
<![CDATA[содержимое]]>
Раздел CDATA не может содержать последовательность символов "]]>", поскольку она используется для завершения раздела CDATA.
Пример:
Если текст документа содержит синтаксис разметки документов, для того, чтобы он воспринимался именно как текст, можно поместить такие данные внутрь секции CDATA:
<![CDATA[<text>Содержимое</text>]]>
24

Документ XML. Ссылки на символы
В текст документа могут вставляться:
ссылки на символы;
ссылки на сущности.
Ссылки на символы обычно используются, когда необходимо вставить в текст документа, символы, отсутствующие на клавиатуре (например, греческие буквы или символы математических операций). Эти ссылки формируются одним из следующих способов:
HH; – где HH – шестнадцатеричный код символа в кодировке, указанной в атрибуте encoding объявления документа XML (в представлении кода можно использовать буквы a-f как в нижнем, так и в верхнем регистре);
DD; – где DD представляет собой десятичный код символа в кодировке, указанной в атрибуте encoding объявления документа XML.
В уравнении α ≠ β.
строка документа XML:
В уравнении .
экран как
25

Документ XML. Ссылки на сущности - 1
Ссылка на сущность определяется следующим
образом:
&имя
;
где имя – это имя сущности.
Ссылки на сущности используются, если документ XML содержит повторяющиеся части или если документ XML разбивается на отдельные модули.
26

Документ XML. Ссылки на сущности - 2
Все сущности должны быть определены в предложении <!
ENTITY …> в DTD, за исключением пяти встроенных
Имя сущности
Значение
Описание
lt |
< |
знак "меньше" |
|
gt |
> |
amp |
& |
знак "больше" амперсант
apos |
' |
апостроф или одинарные кавычки |
|
||
quot |
" |
двойные кавычки |
Пример: |
|
|
Строка в тексте документа XML:
Элемент <hr> выводит горизонтальную линию в документе
HTML.
При выводе документа на экран строка примет следующий вид:
Элемент <hr> выводит горизонтальную линию в документе HTML.
27

Документ XML. Комментарии
XML-документ может содержать комментарии, которые записываются так же, как и в HTML:
<!-- текст комментария -->
Текст комментария может состоять из любых символов, кроме двух минусов подряд ("--"). Кроме этого, текст комментария не должен заканчиваться символом "-".
Пример:
<!--product title="Комментарий">
Элемент рассматривается как комментарий </product>-->
28

Пространства имен XML - 1
Часто случается, что различные логические схемы документов используют одни и те же имена элементов в различных смыслах. Тогда в случае, если в одном и том же документе необходимо использовать элементы нескольких различных схем, будет невозможно определить, какой элемент относится к какой схеме, и какие схемы были использованы в документе. Для решения этих проблем в XML используются пространства имен (namespaces).
Чтобы различать схемы документов, каждой из них |
|
ставится в соответствие уникальный идентификатор |
|
ресурса – URI (Universal Resource Identifier). Две схемы |
|
будут считаться тождественными тогда и только |
|
тогда, когда их уникальные идентификаторы будут |
|
совпадать. Очень часто в качестве URI используются |
29 |
URL различных Web-сайтов. |

Пространства имен XML - 2
Для того чтобы определить, какой схеме принадлежит тот или иной элемент в документе, можно использовать механизм префиксов. Префиксы пространств имен задаются как атрибуты с именами, начинающимися последовательностью
xmlns, и имеют следующий вид:
<префикс:элемент xmlns:префикс="URI">
…
</префикс:элемент>
Префиксы, которые были определены в некотором элементе, могут быть использованы в его собственном имени, а также в именах всех элементов, которые включены в него, если они не переопределены другим объявлением.
30