DTD全稱為,Document Type Definition,中文翻譯為文檔類型定義,是一套為了進(jìn)行程序間的數(shù)據(jù)交換而建立的關(guān)于標(biāo)記符的語(yǔ)法規(guī)則。
文檔類型定義(DTD)可定義合法的XML文檔構(gòu)建模塊。它使用一系列合法的元素來(lái)定義文檔的結(jié)構(gòu)。
DTD 可被成行地聲明于 XML 文檔中,也可作為一個(gè)外部引用。
假如 DTD 被包含在您的 XML 源文件中,它應(yīng)當(dāng)通過下面的語(yǔ)法包裝在一個(gè) DOCTYPE 聲明中:
<!DOCTYPE root-element [element-declarations]>
帶有 DTD 的 XML 文檔實(shí)例(請(qǐng)?jiān)?IE5 以及更高的版本打開,并選擇查看源代碼):
<?xml version="1.0"?>
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend</body>
</note>
在您的瀏覽器中打開此 XML 文件,并選擇"查看源代碼"命令。
The DTD above is interpreted like this:
假如 DTD 位于 XML 源文件的外部,那么它應(yīng)通過下面的語(yǔ)法被封裝在一個(gè) DOCTYPE 定義中:
<!DOCTYPE root-element SYSTEM "filename">
這個(gè) XML 文檔和上面的 XML 文檔相同,但是擁有一個(gè)外部的 DTD: (點(diǎn)擊打開該文件,并選擇"查看源代碼"命令。)
<?xml version="1.0"?>
<!DOCTYPE note SYSTEM "note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
這是包含 DTD 的 "note.dtd" 文件:
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
通過 DTD,您的每一個(gè) XML 文件均可攜帶一個(gè)有關(guān)其自身格式的描述。
通過 DTD,獨(dú)立的團(tuán)體可一致地使用某個(gè)標(biāo)準(zhǔn)的 DTD 來(lái)交換數(shù)據(jù)。
而您的應(yīng)用程序也可使用某個(gè)標(biāo)準(zhǔn)的 DTD 來(lái)驗(yàn)證從外部接收到的數(shù)據(jù)。
您還可以使用 DTD 來(lái)驗(yàn)證您自身的數(shù)據(jù)。
更多建議: