Технология Microsoft ADO.NET



           

Создание действительных (valid) XML-документов. Определение типа документа (DTD) - часть 3


При создании документа XMLTour.xml мы определили элемент TOUR, который содержит дочерние элементы в следующей последовательности: IDTOUR, NAME, PRICE и INFORMATION. Далее, при заполнении списка туров для нас важно осуществлять проверку расположения элементов - дочерние элементы должны располагаться только так. В таблице 10.6 рассмотрены некоторые типичные примеры определения расположения дочерних элементов.

Таблица 10.6. Примеры описания структуры элемента

№ШаблонОписаниеПримерПравильноНеправильноПримерПравильноНеправильно
1

<!ELEMENT Название_элемента (Название_первого_дочернего_элемента, название_второго_дочернего_элемента, название_третьего_дочернего_элемента,:, название_n-ного_дочернего_элемента)>

Последовательная форма модели содержимого указывает, что элемент должен иметь заданную последовательность дочерних элементов. Имена типов дочерних элементов отделяются запятыми. Пропуск дочернего элемента или использование одного и того же типа дочернего элемента более одного раза также недопустимо

<?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE TOUR [ <!ELEMENT TOUR (IDTOUR, NAME, PRICE, INFORMATION)> <!ELEMENT IDTOUR (#PCDATA)> <!ELEMENT NAME (#PCDATA)> <!ELEMENT PRICE (#PCDATA)> <!ELEMENT INFORMATION (#PCDATA)> ] > <TOUR> <IDTOUR>1</IDTOUR> <NAME>Кипр</NAME> <PRICE>25 000,00р. </PRICE> <INFORMATION>В стоимость двух взрослых путевок входит цена одной детской (до 7лет)</INFORMATION> </TOUR>

<?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE TOUR [ <!ELEMENT TOUR (IDTOUR, NAME, PRICE, INFORMATION)> <!ELEMENT IDTOUR (#PCDATA)> <!ELEMENT NAME (#PCDATA)> <!ELEMENT PRICE (#PCDATA)> <!ELEMENT INFORMATION (#PCDATA)> ] > <TOUR> <NAME>Кипр</NAME> <IDTOUR>1</IDTOUR> <PRICE>25 000,00р. </PRICE> <INFORMATION>В стоимость двух взрослых путевок входит цена одной детской (до 7лет)</INFORMATION> </TOUR>

2<!ELEMENT Название_элемента (Название_первого_дочернего_элемента | название_второго_дочернего_элемента | название_третьего_дочернего_элемента |:| название_n-ного_дочернего_элемента)>Выборочная форма модели содержимого указывает, что элемент может иметь один любой из серии допустимых дочерних элементов, разделяемых символом "|"

<?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE TOUR [ <!ELEMENT TOUR (IDTOUR | NAME | PRICE | INFORMATION)> <!ELEMENT IDTOUR (#PCDATA)> <!ELEMENT NAME (#PCDATA)> <!ELEMENT PRICE (#PCDATA)> <!ELEMENT INFORMATION (#PCDATA)> ] >

Правильные варианты:

  1. <TOUR> <IDTOUR>1</IDTOUR> </TOUR>

  2. <TOUR> <NAME>Кипр</NAME> </TOUR>

  3. <TOUR> <PRICE>25 000,00р. </PRICE> </TOUR>

  4. <TOUR> <INFORMATION>В стоимость двух взрослых путевок входит цена одной детской (до 7лет)</INFORMATION> </TOUR>

<?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE TOUR [ <!ELEMENT TOUR (IDTOUR | NAME | PRICE | INFORMATION)> <!ELEMENT IDTOUR (#PCDATA)> <!ELEMENT NAME (#PCDATA)> <!ELEMENT PRICE (#PCDATA)> <!ELEMENT INFORMATION (#PCDATA)> ] >

Неправильные варианты:

  1. <TOUR> <IDTOUR>1</IDTOUR> <NAME>Кипр</NAME>

    </TOUR>

  2. <TOUR> <NAME>Кипр</NAME> <IDTOUR>1</IDTOUR> <PRICE>25 000,00р. </PRICE> <INFORMATION>В стоимость двух взрослых путевок входит цена одной детской (до 7лет)</INFORMATION> </TOUR>
<


Содержание  Назад  Вперед