下面都能够声明一个混合型的元素。
<!ELEMENT 喜欢的游戏 (#PCDATA| 游戏)*>
<!ELEMENT游戏 (#PCDATA| 游戏名称 |游戏类型)*>
<!ELEMENT游戏名称 (#PCDATA)>
<!ELEMENT游戏类型 (#PCDATA)>
定义子元素,dtd中定义子元素有三种类型:1、有序的子元素 2、互斥的子元素 3、无序的子元素。
定义有序子元素时,dtd声明时 <!ELEMENT计算机书籍(书名,作者,价格,简要介绍)> 当编写xml文档时 必须按照dtd约束的顺序来编写xml文档对应xml文档则应这样编写;
<计算机书籍> <书名>java精讲</书名><作者>xx</作者><价格>79.00</价格><简要介绍>该书很好</简要介绍> </计算机书籍>
定义互斥的子元素, <!ELEMENT计算机书籍(书名|作者|价格|简要介绍)>这个约束的意思是计算机书籍这个元素可以包含书名、作者、价格、简要介绍子元素中其中一个不可以同时两个或多个子元素。 相应的xml文档应当这样编写:<计算机书籍><书名>java精讲</书名>(可以是书名、作者、价格、简要介绍的任意一个)</计算机书籍>
定义无序的子元素是,可以加上 * 、+ 、?标记来声明子元素出现的频率,以此来实现无序。
<计算机书籍><书名>java精讲</书名><作者>xx1</作者><作者>xx2</作者><价格>222.00</价格><作者>xx3</作者><价格>10.00</价格></计算机书籍>