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

Профессиональная замена стояка в Нижнем Новгороде с гарантией.

Доработка DTD


После внимательного изучения этого определения DTD его недостатки становятся очевидными, и мы начинаем понимать, что требуется внести ряд исправлений. Первый недостаток заключается в том, что у нас нет способа однозначно идентифицировать записку. Во-вторых, следовало бы более подробно указать, что может содержаться в элементах from и to. В-третьих, возможны ситуации, когда записки посылаются не от одного, а от нескольких лиц или нескольким лицам. Обдумав, какие виды записок реально могут пересылаться между служащими фирмы, мы переделали DTD (листинг 2.2 [Name — название, department — отдел, important part — наиболее существенная часть. — Примеч. перев. ]).

Листинг 2.2. Исправленное определение DTD для записок (memo.dtd)

<!ELEMENT memo (from, to, cc?, body)>

<!ATTLIST memo

id ID «REQUIRED

date CDATA «REQUIRED

subject CDATA #IMPLIED>

<!ELEMENT from (name.department)*>

<!ELEMENT to (name,department)*>

<!ELEMENT cc (name,department)*>

<!ELEMENT name (#PCDATA)>

<!ELEMENT department (#PCDATA)>

<!ELEMENT body (#PCDATA,important_part?)>

<!ELEMENT important_part (#PCDATA)>

Используя это определение DTD, любой сотрудник фирмы XMLGifts может точно ответить на вопрос, что такое служебная записка В листинге 2 3 показана правильно оформленная и допустимая служебная записка

Листинг 2.3. Правильно оформленная и допустимая служебная записка (memoexamplel.xml)

<?xml version="l.0" standalone="no"?>

<!DOCTYPE memo SYSTEM "memo.dtd">

<memo id = "cm0001"

date = "8/2/2000"

subject = "ваша задача на сегодня">

<from>

<name>Крис Минник</name>

</from>

<to>

<department>Bceм coтpyдникaм</department>

</to>

<body>

Поздравляю с окончанием проекта XMLGnfts.com

Предлагаю <important_part>сделать выходной и поехать на озеpo</important_part>

</body>

</memo>




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



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