DTD - элементы
- Предыдущая страница Модули 构建 DTD
- Следующая страница Атрибуты DTD
在一个DTD中,元素通过元素声明来进行声明。
声明一个元素
在DTD中,XML元素通过元素声明来进行声明。元素声明使用下面的语法:
元素名称 类别
или
元素名称 (元素内容)
空元素
空元素通过类别关键词EMPTY进行声明:
元素名称 EMPTY
Пример:
EMPTY
XML示例:
<br />
只有PCDATA的元素
只有PCDATA的元素通过圆括号中的#PCDATA进行声明:
元素名称 (#PCDATA)
Пример:
(#PCDATA)
包含任何内容的元素
通过类别关键词ANY声明的元素,可以包含任何可解析数据的组合:
元素名称
Пример:
ANY
Элемент с подэлементами (сериями)
Элемент с одним или несколькими подэлементами объявляется через имена подэлементов в скобках:
<!ELEMENT элемент_имени (подэлемент_имени 1)>
или
<!ELEMENT элемент_имени (подэлемент_имени 1,подэлемент_имени 2,...)>
Пример:
<!ELEMENT note (to,from,heading,body)>
Когда подэлементы объявлены в порядке, разделённом запятыми, они должны出现 в документе в том же порядке. В полной декларации подэлементы также должны быть заявлены, и у подэлементов могут быть подэлементы. Полная декларация элемента "note":
<!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)>
Указание элемента,出现的次数只一次
<!ELEMENT элемент_имени (подэлемент_имени)>
Пример:
<!ELEMENT note (message)>
В примере выше宣称: подэлемент message должен出现 один раз и только в элементе "note".
Указание элемента,出现的次数至少一次
<!ELEMENT элемент_имени (подэлемент_имени+)>
Пример:
<!ELEMENT note (message+)>
В примере выше плюс宣称: подэлемент message должен出现 в элементе "note" по крайней мере один раз.
Указание элемента,出现的次数为零或多次
<!ELEMENT элемент_имени (подэлемент_имени*)>
Пример:
<!ELEMENT note (message*)>
В примере выше звёздочка宣称: подэлемент message может出现 в элементе "note" нулевое или несколько раз.
Указание элемента,出现的次数为零或一次
<!ELEMENT элемент_имени (подэлемент_имени?)>
Пример:
<!ELEMENT note (message?)>
В примере выше вопросительный знак宣称: подэлемент message может出现 в элементе "note" нулевое или одно время.
Указание содержимого типа "не.../либо..."
Пример:
<!ELEMENT note (to,from,header,(message|body))>
Пример выше宣称:элемент "note" должен содержать элементы "to", "from", "header" и не "message" элемент "body".
Объявлен смешанный тип содержимого
Пример:
<!ELEMENT note (#PCDATA|to|from|header|message)*>
В приведенном выше примере объявлено: "элемент note" может содержать PCDATA,出现的次数可以是零次或多次, "to", "from", "header" или "message".
- Предыдущая страница Модули 构建 DTD
- Следующая страница Атрибуты DTD