DTD示例3

如果DTD中的元素名稱後跟星號*,則此元素可以出現零次,一次或多次。

DTD

根元素XXX可以包含零個或多個元素AAA,後前恰好只跟一個元素BBB。 元素BBB必須始終存在:

<!ELEMENT XXX (AAA* , BBB)>
<!ELEMENT AAA (#PCDATA)>
<!ELEMENT BBB (#PCDATA)>

有效文檔

以下是一個有效文檔 -

<!DOCTYPE XXX SYSTEM "tutorial.dtd">
<XXX> <AAA/> <BBB/> </XXX>

下面也是一個有效文檔。 元素AAA不是強制性的:

<!DOCTYPE XXX SYSTEM "tutorial.dtd">

<XXX> <BBB/> </XXX>

文檔中可能出現幾個AAA元素:

<!DOCTYPE XXX SYSTEM "tutorial.dtd">

<XXX> <AAA/> <AAA/> <AAA/> <AAA/> <AAA/> <AAA/> <AAA/> <BBB/> </XXX>

有錯誤的文件

元素BBB缺失:

<!DOCTYPE XXX SYSTEM "tutorial.dtd">

<XXX>    </XXX>

元素BBB必須在元素AAA之後:

<!DOCTYPE XXX SYSTEM "tutorial.dtd">

<XXX> <BBB/> <AAA/> </XXX>

元素AAA不得在元素BBB之後:

<!DOCTYPE XXX SYSTEM "tutorial.dtd">

<XXX> <AAA/> <AAA/> <AAA/> <AAA/> <BBB/> <AAA/> <AAA/> </XXX>