XML DTD

2022-05-13 17:46 更新

XML 驗(yàn)證

DTD 為英文Document Type Definition,中文意思為“文檔類(lèi)型定義”。

擁有正確語(yǔ)法的 XML 被稱(chēng)為"形式良好"的 XML。

通過(guò) DTD 驗(yàn)證的XML是"合法"的 XML。


形式良好的 XML 文檔

"形式良好"的 XML 文檔擁有正確的語(yǔ)法。

在前面的章節(jié)描述的語(yǔ)法規(guī)則:

  • XML 文檔必須有一個(gè)根元素
  • XML元素都必須有一個(gè)關(guān)閉標(biāo)簽
  • XML 標(biāo)簽對(duì)大小寫(xiě)敏感
  • XML 元素必須被正確的嵌套
  • XML 屬性值必須加引號(hào)
<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>


驗(yàn)證 XML 文檔

合法的 XML 文檔是"形式良好"的 XML 文檔,這也符合文檔類(lèi)型定義(DTD)的規(guī)則:

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE note SYSTEM "Note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

在上面的實(shí)例中,DOCTYPE 聲明是對(duì)外部 DTD 文件的引用。下面的段落展示了這個(gè)文件的內(nèi)容。


XML DTD

DTD 的目的是定義 XML 文檔的結(jié)構(gòu)。它使用一系列合法的元素來(lái)定義文檔結(jié)構(gòu):

<!DOCTYPE note
[
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>

如果您想要學(xué)習(xí) DTD,請(qǐng)?jiān)谖覀兊?a href="/">首頁(yè)查找 DTD 教程。


XML Schema

W3C 支持一種基于 XML 的 DTD 代替者,它名為 XML Schema:

<xs:element name="note">

<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>

</xs:element>

如果您想要學(xué)習(xí) XML Schema,請(qǐng)?jiān)谖覀兊?a href="/">首頁(yè)查找 Schema 教程。


一個(gè)通用的 XML 驗(yàn)證器

為了幫助您檢查 XML 文件的語(yǔ)法,我們創(chuàng)建了 XML 驗(yàn)證器,以便您對(duì)任何 XML 文件進(jìn)行語(yǔ)法檢查。

請(qǐng)看下一章。

相關(guān)教程

DTD教程

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)