1空元素
类别关键词EMPTY:
<!ELEMENT 元素名称 EMPTY>例子:<!ELEMENT brEMPTY>
XML例子:<br />
2只有PCDATA 的元素
圆括号中的 #PCDATA
<!ELEMENT 元素名称 (#PCDATA)>例子:<!ELEMENT from(#PCDATA)>
3带有任何内容的元素
类别关键词 ANY:
<!ELEMENT 元素名称 ANY>例子:<!ELEMENT noteANY>
4带有子元素(序列)的元素
带有一个或多个子元素的元素通过圆括号中的子元素名进行声明:
<!ELEMENT 元素名称 (子元素名称 1,子元素名称2,.....)>
例子:
<!ELEMENTnote (to,from,heading,body)>
当子元素按照由逗号分隔开的序列进行声明时,这些子元素必须按照相同的顺序出现在文档中。在一个完整的声明中,子元素也必须被声明,同时子元素也可拥有子元素。"note" 元素的完整声明是:
<!ELEMENT note (to,body)>
<!ELEMENT to(#PCDATA)>
<!ELEMENT from(#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body(#PCDATA)>
5声明只出现一次的元素
<!ELEMENT 元素名称 (子元素名称)>例子:<!ELEMENTnote (message)>
6声明最少出现一次的元素
<!ELEMENT 元素名称 (子元素名称+)>例子:<!ELEMENT note (message+)>
7声明出现零次或多次的元素
<!ELEMENT 元素名称 (子元素名称*)>例子:<!ELEMENT note (message*)>
8声明出现零次或一次的元素
<!ELEMENT 元素名称 (子元素名称?)>例子:<!ELEMENT note (message?)>
9声明混合型的内容
<!ELEMENT 子元素名称(#PCDATA|子元素名称)*>
例子:<!ELEMENTnote (#PCDATA|to|from|header|message)*>
五DTD 总结
您已经学习了 DTD,下一步学习什么内容呢?下一步应当学习 XML Schema。
XML Schema 用于定义 XML 文档的合法元素,类似 DTD。我们认为 XML Schema 很快会将 DTD 取而代之,被用在大部分的网络应用程序中。
XML Schema 是基于 XML 的 DTD 替代物。
与 DTD 不同,XML Schema 支持数据类型和命名空间。