Электронный магазин на Java и XML


Элементы description, paragraph и general


Следующая часть DTD определяет элементы, дочерние по отношению к product. Дочерний элемент name в настоящий момент может содержать любую разновидность проверенных символьных данных, что вполне соответствует нашим требованиям. Элемент description, определенный таким же образом, содержит информацию, исходно предназначенную для прочтения людьми, но также в нем могут содержаться некоторые данные, которые мы хотели бы сделать доступными для программ, то есть которые можно было бы извлекать автоматически.

Чтобы сделать содержимое элемента description удобным для восприятия и для применения к нему в дальнейшем различных стилей, нужно предусмотреть возможность разделения элемента description на части, которые будут содержать элементы для отображения текста жирным шрифтом, курсивом и т. д. Для этого в первую очередь нужно, чтобы элемент description мог содержать элементы paragraph, и определить paragraph, как это сделано ниже [Paragraph — абзац (имеется в виду просто некая часть текста), bold — полужирный (шрифт), italics — курсив, quote — цитата, link — ссылка — Примеч перев ]:

<!ELEMENT description (paragraph*)>

<!ELEMENT paragraph (#PCDATA | bold |

italics|quote|link)*>

<!ELEMENT bold #PCDATA>

<!ELEMENT italics #PCDATA>

<! ELEMENT quote #PCDATA>

<!ATTLIST quote

attrib CDATA #IMPLIED>

<!ELEMENT link (#PCDATA)>

<!ATTLIST link

href CDATA «REQUIRED

alt CDATA #IMPLIED>

Существует большая вероятность того, что такой же список элементов разметки, который используется в элементе paragraph, потребуется в каком-то другом месте DTD (например, в элементе title или footnote, то есть в заголовке или в сноске). Чтобы упростить процесс создания DTD, мы ввели параметрическую сущность, представляющую собой список элементов разметки текста:

<!ENTITY %runmng_text "(#PCDATA | bold |

italics | quote | link)* ">

СОВЕТ

Напомним, что сущность — просто подстановочный текст, который пишется вместо заменяемого им значения, и что общие и параметрические сущности должны быть объявлены прежде, чем будут использованы. Поскольку параметрические сущности могут существовать только в DTD, то обычно их объявления сгруппированы в начале DTD. В нашем случае это тем более удобно, что при необходимости добавления какого-либо элемента разметки в элемент paragraph  эту сущность будет легко найти.




- Начало -  - Назад -  - Вперед -



Книжный магазин