Опубликован: 08.08.2007 | Доступ: свободный | Студентов: 1670 / 177 | Оценка: 3.86 / 3.76 | Длительность: 11:46:00
Специальности: Программист
Лекция 9:

Связи и запросы

Ссылка на пропущенную сущность

Информационный пункт ссылки на пропущенную сущность должен быть определен для каждой ссылки на сущность, которая либо не была интерпретирована анализатором, не осуществляющим проверку на допустимость, либо в связи с тем, что декларация неизвестной сущности не была прочитана (например, вследствие недоступности), либо потому, что анализатор не включает внешние анализируемые сущности.

У информационных пунктов ссылок на неизвестные сущности имеются следующие свойства:

  1. Имя сущности, на которую ссылаются.
  2. По желанию разработчика можно включить также информационный пункт ссылки на сущность для неразвернутой внешней анализируемой сущности, если анализатор прочитал декларацию.

Символ

Для каждого символа документа, не являющегося символом разметки, должен быть информационный пункт символа (обратите внимание - один информационный пункт для каждого отдельного символа). На практике расположенные рядом символы объединяют в строки или конструкции текста, а не перечисляют по отдельности (в соответствии со спецификацией W3C Infoset, это допустимо).

Информационные пункты символов содержат свойства:

  1. Код символа в соответствии со стандартом ISO 10646 (Unicode).
  2. Флаг, показывающий, является ли символ пустым пространством внутри содержания или нет. Проверяющие на допустимость анализаторы должны всегда устанавливать этот флаг; не проверяющие на допустимость при желании могут установить этот флаг равным false.
  3. При желании разработчик может указать, был ли этот символ включен как часть предопределенной сущности XML.

Комментарий

Для каждого комментария в документе можно определить один информационный пункт комментария.

Информационный пункт комментария содержит свойство - содержание этого комментария.

Декларация типа документа

Один информационный пункт декларации типа документа можно указать при желании разработчика и при наличии такой декларации.

У информационного пункта декларации типа документа могут быть следующие свойства:

  1. Ссылка на информационный пункт сущности для внешнего подмножества DTD.
  2. Упорядоченный список ссылок на информационные пункты комментариев и команд обработки, присутствующие в DTD.

Сущность

Не анализируемые внешние сущности должны быть представлены в виде информационных пунктов сущностей. Для каждой другой сущности в документе также может существовать информационный пункт объекта. Если сущность была объявлена несколько раз, для создания информационного пункта сущности используется только первая ее декларация.

Информационные пункты сущностей содержат такие свойства:

  1. Тип сущности (внутренняя параметрическая сущность, внешняя параметрическая сущность, внутренняя общая сущность, внешняя общая сущность, не анализируемая сущность, сущность документа или внешнее подмножество DTD ).
  2. Имя сущности. Равно неопределенному значению (null), если информационный пункт сущности представляет собой сущность документа или внешнее определение DTD.
  3. Системный идентификатор сущности. Для внутренних сущностей это свойство равно null; для сущности документа оно может быть равно null, а может содержать системный идентификатор документа.
  4. Общий идентификатор сущности, если он есть. Для внутренних сущностей равен null.
  5. Если сущность является не анализируемой, то ссылка - на информационный пункт нотации. Для других типов сущностей равен null.
  6. Базовый идентификатор URI сущности. Если сущность является внутренней, то значение этого идентификатора должно быть равно null
  7. По желанию разработчика можно включить текст сущности, если это внутренняя сущность.
  8. По желанию разработчика можно включить также название кодировки символов, в которой выражена сущность.
  9. Можно включить также указание на статус автономности сущности. Допустимы значения "yes", "no" и "not present".

Нотация

Для каждой объявленной в определении DTD нотации должен быть один информационный пункт нотации.

Информационные пункты нотации содержат следующие свойства:

  1. Имя нотации
  2. Системный идентификатор нотации, или null, если он не был определен
  3. Общий идентификатор нотации, или null, если он не был определен
  4. Базовый идентификатор URI, соответствующий нотации

Маркер начала сущности

Для того чтобы отметить начало текста, вставляемого из внешней анализируемой сущности, имеется маркер начала сущности. Маркер не используется для параметрических сущностей.

Информационный пункт маркера начала сущности содержит свойство, представляющее собой ссылку на информационный пункт сущности для вставляемого текста.

Маркер конца объекта

Для того чтобы отметить конец текста, вставляемого из внешней анализируемой сущности, существует маркер конца сущности. Маркер не используется для параметрических сущностей.

Информационный пункт маркера конца сущности содержит свойство, представляющее собой ссылку на информационный пункт сущности для вставляемого текста.

Маркер начала раздела CDATA

Для того чтобы показать начало текста, включенного в раздел DATA, используется один маркер начала объекта. Информационный пункт маркера начала раздела CDATA не имеет свойств.

Маркер конца раздела CDATA

Для того чтобы показать конец текста, включенного в раздел CDATA, используется один маркер конца сущности. Информационный пункт маркера конца раздела CDATA не имеет свойств.