Определение сущности
В документе XML можно определять свои сущности (внутренние сущности) или использовать сущности, определенные в другом файле (внешние сущности). Ссылка на сущность имеет следующий формат
&имя;
Используемые в документе XML сущности могут быть двух типов:
· анализируемые внешние сущности (parsed entities) – воспринимаются и обрабатываются как данные XML;
· неанализируемые внешние сущности (unparsed entities) – данные, не обрабатываемые XML (например, изображения или бинарные файлы, которые используются в данном документе).
Внутреннее определение сущности, задаваемое во внутреннем DTD, может быть только анализируемой сущностью и имеет следующий формат
<!ENTITY имя "значение">
где параметр имя задает имя сущности, которое будет использоваться в ссылке на сущность в документе XML, а литерал значение – это значение сущности, на которое будет заменяться ссылка на сущность в документе XML.
Определение внешней анализируемой сущности имеет один из следующих форматов:
<! ENTITY имя SYSTEM "URI">
<! ENTITY имя PUBLIC "владелец" "URI">
В этом определении параметр имя задает имя сущности, а параметры "URI" и "владелец", также как и для определения DOCTYPE определяют местонахождение файла со значением сущности и ее владельца. Файл, содержащий значение сущности (без окаймляющих апострофов) обычно имеет расширение .ent. Если в значении сущности используются буквы не латинского алфавита, их необходимо представлять, как сущности символов Unicode.
Для неанализируемой сущности (которая может быть только внешней сущностью) определение имеет один из следующих форматов:
<!ENTITY имя SYSTEM "URI" NDATA имя-нотации>
<!ENTITY имя PUBLIC "владелец" "URI" NDATA имя-нотации>
Здесь параметры имя, "URI" и "владелец" имеют тот же смысл, что и для анализируемой сущности, а параметр имя-нотации задает имя нотации. Нотации определяют формат неанализируемых экземпляров, формат элементов, которые породили атрибут нотации, или приложение, которому адресуется инструкция процесса.
Еще одним видом сущности являются параметрические сущности или сущности-параметры. Сущности этого типа используются только во внешних DTD для более гибкого описания логической структуры документа. Ссылки на параметрические сущности в DTD имеют следующий вид:
%имя;
Объявление параметрической сущности имеет следующий формат:
<!ENTITY % имя "значение-1 значение-2…">
Параметр имя определяет имя параметрической сущности, а параметры значение-i определяют значения сущностей. В качестве значения сущностей могут использоваться данные типа CDATA, а также параметрические сущности.
Дата добавления: 2015-04-05; просмотров: 978;