DTDとは何ですか?
DTDは、文書型定義です。
DTD構造とXML文書の法的要素と属性を定義します。
なぜDTDを使用しますか?
DTDで、人々の独立したグループは、データを交換するための標準的なDTDに同意することができます。
アプリケーションは、そのXMLデータが有効であることを確認し、DTDを使用することができます。
内部DTD宣言
DTDは、XMLファイル内で宣言されている場合は、内にラップする必要があります<!DOCTYPE>定義:
内部DTDを持つXML文書
<?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ファイル» XMLファイルでは、選択し"view source" DTDを表示します。
DTDは、上記のように解釈されます。
- !DOCTYPE note 、この文書のルート要素はノートであることを定義します
- !ELEMENT note :ノート要素は、4つの要素を含んでいなければならないことを定義"to,from,heading,body"
- !ELEMENT to型である要素に定義する"#PCDATA"
- !ELEMENT from型である要素から定義する"#PCDATA"
- !ELEMENT headingタイプであることを見出し要素を定義する"#PCDATA"
- !ELEMENT body型であることが本体要素を定義する"#PCDATA"
外部DTD宣言
DTDは、外部ファイルで宣言されている場合は、 <!DOCTYPE>定義は、DTDファイルへの参照を含める必要があります。
外部DTDを参照して、XML文書
<?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>
ビューのXMLファイル» そして、ここでファイルである"note.dtd" DTDが含まれています:
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>