使用|带字符,可以从几个元素中选择一个。
DTD定义
根元素XXX必须包含一个元素AAA,后跟一个元素BBB。 元素AAA必须包含一个元素CCC,后跟元素DDD。 元素BBB必须包含一个元素CCC或一个元素DDD:
<!ELEMENT XXX (AAA , BBB)>
<!ELEMENT AAA (CCC , DDD)>
<!ELEMENT BBB (CCC | DDD)>
<!ELEMENT CCC (#PCDATA)>
<!ELEMENT DDD (#PCDATA)>
有效的文档
下面是一个有效的文档 -
<!DOCTYPE XXX SYSTEM "tutorial.dtd">
<XXX>
<AAA>
<CCC/> <DDD/>
</AAA>
<BBB>
<CCC/>
</BBB>
</XXX>
下面是另一个有效的文档 -
<!DOCTYPE XXX SYSTEM "tutorial.dtd">
<XXX>
<AAA>
<CCC/> <DDD/>
</AAA>
<BBB>
<DDD/>
</BBB>
</XXX>
有错误的文件
元素BBB可以包含元素CCC或DDD,但不能同时包含:
<!DOCTYPE XXX SYSTEM "tutorial.dtd">
<XXX>
<AAA>
<CCC/> <DDD/>
</AAA>
<BBB>
<CCC/> <DDD/>
</BBB>
</XXX>
上面示例代码中,因为同时包含元素CCC和DDD,所以是错误的。
元素BBB可以包含元素CCC或DDD,但不能同时包含:
<!DOCTYPE XXX SYSTEM "tutorial.dtd">
<XXX>
<AAA>
<CCC/> <DDD/>
</AAA>
<BBB>
<DDD/> <CCC/>
</BBB>
</XXX>
