DTD示例10
如果CDATA類型的屬性符合良好形成約束,則它可以包含任何字符。 NMTOKEN類型只能包含字母,數字和點.,連字符-,下劃線_和冒號:。 NMTOKENS可以包含與NMTOKEN加上空格相同的字符。 空格由一個或多個空格字符,回車符,換行符或製表符組成。
DTD聲明
必須始終存在屬性bbb和ccc,屬性aaa是可選的:
<!ELEMENT attributes (#PCDATA)>
<!ATTLIST attributes
aaa CDATA #IMPLIED
bbb NMTOKEN #REQUIRED
ccc NMTOKENS #REQUIRED>
有效的文檔
存在所有必需屬性,其值的類型正確:
<!DOCTYPE attributes SYSTEM "tutorial.dtd">
<attributes aaa="#d1" bbb="a1:12" ccc=" 3.4 div -4"/>
示例代碼2 -
<!DOCTYPE attributes SYSTEM "tutorial.dtd">
<attributes bbb="a1:12"
ccc="3.4
div
-4"/>
無效文檔
NMTOKEN和NMTOKENS類型的屬性中不允許使用字符#:
<!DOCTYPE attributes SYSTEM "tutorial.dtd">
<attributes aaa="#d1" bbb="#d1" ccc="#d1"/>
NMTOKEN類型的屬性中禁止使用空格字符:
<!DOCTYPE attributes SYSTEM "tutorial.dtd">
<attributes bbb="A B C" ccc="A B C"/>