內嵌DTD:
<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE 書架[
<!ELEMENT 書架(書+)>
<!ELEMENT 書(書名,作者,售價)>
<!ELEMENT 書名(#PCDATA)>
<!ELEMENT 作者(#PCDATA)>
<!ELEMENT 售價(#PCDATA)>
]>
<書架>
<書>
<書名>java</書名>
<作者>白艷</作者>
<售價>78</售價>
</書>
<書>
<書名>c++</書名>
<作者>錢能</作者>
<售價>12</售價>
</書>
</書架>
外部DTD:
book.dtd
<?xml version="1.0" encoding="UTF-8"?>
<!– ?:0 1 +:1 N *:0 N |:或 EMPTY:當前標記內容必須為空 ANY:當前文檔中所有的標記都可以出現–>
<!ELEMENT bookinfo (book)+>
<!ELEMENT book ((name | bookname), author, price, type, age)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT bookname (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT price (#PCDATA)>
<!ELEMENT type EMPTY>
<!ELEMENT age ANY>
<!– 屬性:ATTLIST
ATTLIST 節點名字 屬性名字 類型(CDATA|ID ) #約束條件
如:#FIXED "111" :指定當前的id屬性必須為111
#REQUIRED:屬性必須存在
#IMPLIED :屬性可以不存在
ID:唯一值
<!ATTLIST element-name attribute-name CDATA "default-value">
默認屬性值
<!ATTLIST element-name attribute-name attribute-type #IMPLIED>
隱含的屬性值
<!ATTLIST element-name attribute_name attribute-type #REQUIRED>
必添的屬性
<!ATTLIST element-name attribute_name attribute-type #FIXED “value”>
固定屬性值
Attribute-type – Type
ID – 當前元素的編號
IDREF-引用其他元素的編號
–>
<!ATTLIST book id ID #IMPLIED>
book.xml
<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE bookinfo SYSTEM "book.dtd">
<!–
<!DOCTYPE bookinfo PUBLIC "http://www.csuinfosoft.com" "book.dtd" >
–>
<bookinfo>
<book id="A">
<name>java編程思想</name>
<author>啊三</author>
<price>98</price>
<type/>
<age>
<name/>
</age>
</book>
<book id="B">
<bookname>7天精通炒股</bookname>
<author>周星星</author>
<price>198</price>
<type/>
<age/>
</book>
</bookinfo>