DTD示例7
使用|帶字符,可以從幾個元素中選擇一個。
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>