XML文書「検証済みXML文書」とは、DTD (Document Type Definition:文書型定義)に定義されたタグ付けの規則に従って作成された文書を指します。
XML文書XML文書の場合、必ずしも XML宣言は記述する必要はありませんが、整形式XML文書と異なり、DTD は、必ず記述する必要があります。XMLデータでは、DTD は必要ない場合もありますが、ネットワークによって流通させる場合、双方で共通した規則が必要です。DTD とは、XMLデータで記述される要素や属性についての規則を示したものであり、DTD なしでは、データの再利用や交換は行えません。XML文書の構成パターン1XML文書の構成パターンは幾つかありますが、その1つは、XMLデータと同じ文書中に記述される DTDに、「要素型宣言」を記述したパターンです。DTD は、同じ文書中の XMLデータから参照することができます。同一文書中に記述される検証済みXMLのサンプル
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE magazineinfo [
<!ELEMENT magazine (book,author,content)>
<!ELEMENT book (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT content (#PCDATA)>
]>
<magazineinfo>
<magazine>
<book>初心者のためのホームページ作り</book>
<author>ばんばん</author>
<content>XML初級講座</content>
</magazine>
</magazineinfo>
XML文書の構成パターン2XML文書の構成パターンの2つ目は、XMLデータと同じ文書中に記述される DTD に、「要素型宣言」と「属性リスト宣言」を記述したパターンです。属性リストを配した検証済みXMLのサンプル
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE magazineinfo [
<!ELEMENT magazineinfo (magazine)>
<!ELEMENT magazine (book,author,content)>
<!ELEMENT book (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT content (#PCDATA)>
<!ATTLIST book id ID #REQUIRED> ← 属性リスト宣言
]>
<magazineinfo>
<magazine>
<book id="90196">初心者のためのホームページ作り</book>
<author>ばんばん</author>
<content>XML初級講座</content>
</magazine>
</magazineinfo>
XML文書の構成パターン3XML文書の構成パターンの2つ目は、XMLデータと同じ文書中に記述される DTD に、「要素型宣言」、「属性リスト宣言」、「置き換え文字列の定義」を記述したパターンです。属性リストを配した検証済みXMLのサンプル
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE magazineinfo [
<!ELEMENT magazineinfo (magazine)>
<!ELEMENT magazine (book,author,content)>
<!ELEMENT book (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT content (#PCDATA)>
<!ATTLIST book id ID #REQUIRED> ← 属性リスト宣言
<!ENTITY EXT "Extensible Markup Language"> ← 置き換え文字列の定義
]>
<magazineinfo>
<magazine>
<book id="90196">初心者のためのホームページ作り</book>
<author>ばんばん</author>
<content>XML(&EXT;)初級講座</content>
</magazine>
</magazineinfo>
XML文書の構成その他のパターンXML文書の構成パターンは、この他に、エンティティ宣言、外部DTDによる検証など、実に多彩なパターンがあります。XML文書は、様式の違いこそあれ基本的には DTD による検証がなされていることに尽きます。