DTD 简介
文档类型定义(DTD)可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用。
内部的 DOCTYPE 声明
假如 DTD 被包含在您的 XML 源文件中,它应当通过下面的语法包装在一个 DOCTYPE 声明中:
<!DOCTYPE 根元素 [元素声明]>
带有 DTD 的 XML 文档实例:
1 <?xml version="1.0"?> 2 <!DOCTYPE note [ 3 <!ELEMENT note (to,from,heading,body)> 4 <!ELEMENT to (#PCDATA)> 5 <!ELEMENT from (#PCDATA)> 6 <!ELEMENT heading (#PCDATA)> 7 <!ELEMENT body (#PCDATA)> 8 ]> 9 <note> 10 <to>George</to> 11 <from>John</from> 12 <heading>Reminder</heading> 13 <body>Don't forget the meeting!</body> 14 </note>
外部文档声明
假如 DTD 位于 XML 源文件的外部,那么它应通过下面的语法被封装在一个 DOCTYPE 定义中:
<!DOCTYPE 根元素 SYSTEM "文件名">
这个 XML 文档和上面的 XML 文档相同,但是拥有一个外部的 DTD:
1 <?xml version="1.0"?> 2 <!DOCTYPE note SYSTEM "note.dtd"> 3 <note> 4 <to>George</to> 5 <from>John</from> 6 <heading>Reminder</heading> 7 <body>Don't forget the meeting!</body> 8 </note>
这是包含 DTD 的 "note.dtd" 文件:
1 <!ELEMENT note (to,from,heading,body)> 2 <!ELEMENT to (#PCDATA)> 3 <!ELEMENT from (#PCDATA)> 4 <!ELEMENT heading (#PCDATA)> 5 <!ELEMENT body (#PCDATA)>
为什么使用 DTD?
通过 DTD,您的每一个 XML 文件均可携带一个有关其自身格式的描述。
通过 DTD,独立的团体可一致地使用某个标准的 DTD 来交换数据。
而您的应用程序也可使用某个标准的 DTD 来验证从外部接收到的数据。
您还可以使用 DTD 来验证您自身的数据。
本文转载自:http://www.w3school.com.cn/dtd/dtd_intro.asp