XML 驗證
擁有正確語法的 XML 被稱為“形式良好”的 XML。
通過 DTD 驗證的 XML 是“合法”的 XML。
形式良好的 XML 文檔
“形式良好”或“結構良好”的 XML 文檔擁有正確的語法。
“形式良好”(Well Formed)的 XML 文檔會遵守前幾章介紹過的 XML 語法規(guī)則:
- XML 文檔必須有根元素
- XML 文檔必須有關閉標簽
- XML 標簽對大小寫敏感
- XML 元素必須被正確的嵌套
- XML 屬性必須加引號
<?xml version="1.0" encoding="ISO-8859-1"?> <note> <to>George</to> <from>John</from> <heading>Reminder</heading> <body>Don't forget the meeting!</body> </note>
驗證 XML 文檔
合法的 XML 文檔是“形式良好”的 XML 文檔,同樣遵守文檔類型定義 (DTD) 的語法規(guī)則:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE note SYSTEM "Note.dtd">
<note>
<to>George</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don't forget the meeting!</body>
</note>
在上例中,DOCTYPE 聲明是對外部 DTD 文件的引用。下面的段落展示了這個文件的內容。
XML DTD
DTD 的作用是定義 XML 文檔的結構。它使用一系列合法的元素來定義文檔結構:
<!DOCTYPE note [ <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)> ]>
如果您希望學習 DTD,請訪問我們的 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>
如果您需要學習 XML Schema,請訪問我們的 XML Schema 教程。
一個通用的驗證器
為了幫助您檢查 XML 文件的語法,我們創(chuàng)建了這個工具,以便您對任何 XML 文件進行語法檢查。
請看下一節(jié)。