Xpoint
   [напомнить пароль]

dtd и последовательность тегов

Метки: [без меток]
2007-07-06 12:59:53 [обр] tors[досье]

<!ELEMENT root(first,second) ?

означает в root должен быть сначала
first потом second
при чем встречаются они по разу
а как обьявить чтоб они встречались в произвольной последовательности
те можнло было бы обявить
сначала second потом first
и наоборот

спустя 17 часов [обр] AB...(0/233)[досье]

Да, такое возможно с DTD. Правда при этом появляются другие проблемы. Вот как это решается

<!ELEMENT root (first|second)*>

Проблемы

The | sign is used to declare that an element must contain either/or elements.
The * sign is used to declare that the child element can occur zero or more times.

Используйте XSD в замен DTD.

спустя 25 минут [обр] AB...(0/233)[досье]
Вот пример XSD реализации
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
   <xs:element name="root">
      <xs:complexType>
         <xs:complexContent>
            <xs:extension base="rootType"/>
         </xs:complexContent>
      </xs:complexType>
   </xs:element>
   <xs:complexType name="rootType">
      <xs:all>
         <xs:element name="first" type="xs:string"/>
         <xs:element name="second" type="xs:string"/>
      </xs:all>
   </xs:complexType>
</xs:schema>
Powered by POEM™ Engine Copyright © 2002-2005