<!ELEMENT address (name, city, state)>
<address>
元素必須包含一個 <name>
元素、一個 <city>
元素和一個 <state>
元素,並且符合上面的次序。所有的元素都是必需的。逗號表示項的列表。
<!ELEMENT name (title?, first-name, last-name)>
這意味着 <name>
元素包含一個可選的 <title>
元素,後面必須跟有一個 <first-name>
和一個 <last-name>
元素。問號表示這一項是可選的;它可以出現一次或根本不出現。
<!ELEMENT addressbook (address+)>
<addressbook>
元素包含一個或多個 <address>
元素。您可以有任意多的 <address>
元素,但必須至少有一個。加號表示這一項必須至少出現一次,但可出現任意次。
<!ELEMENT private-addresses (address*)>
<private-addresses>
元素包含零個或多個 <address>
元素。星號表示這一項可以出現任意次,包括零次。
<!ELEMENT name (title?, first-name, (middle-initial | middle-name)?, last-name)>
<name>
元素包含一個可選的 <title>
元素,後面跟有一個 <first-name>
元素,隨後可能跟有一個 <middle-initial>
或 <middle-name>
元素,然後跟有一個 <last-name>
元素。換句話說,<middle-initial>
和 <middle-name>
都是可選的,而且您只能選擇二者中的一個。豎線符號表示選擇列表;您只能從列表選擇一項。
還要注意該示例用圓括號對特定元素進行分組,然後在這個組旁放上問號。
<!ELEMENT name ((title?, first-name, last-name) | (surname, mothers-name, given-name))>
這個 <name>
元素可以包含兩個序列中的一個:一個可選的 <title>
,後面跟有一個 <first-name>
和一個 <last-name>
;或一個 <surname>
、一個 <mothers-name>
和一個 <given-name>
。