「整形式XML文書」とは、必要最低限の最も基本的な XMLデータのタグ付け規則に従って作成された文書を意味します。
XML文書は、以下のような規則に従って記述された XMLデータを含んだ文書を指します。HTMLでは、終了タグの省略が許されている要素があります。また、タグの親子関係があやふやでも、Webブラウザ側で補完して表示してくれるものもあります。ある程度の文法違反を許してしまうほどの寛容さを持っています。XMLの記述は、非常に厳格で、上記のような規則に従わなければなりません。つまり、XMLは、整形式XMLとして記述しなければならないのです。XML文書は、必ずしも DTDを記述する必要はありませんが、エンティティ宣言で置き換え文字列の定義を行う場合と、外部ファイルの参照の定義を行う場合には、必須になります。XML文書の構成パターンは幾つかありますが、その1つは XMLデータのみで記述したパターンです。XMLデータのみで記述されるパターンは、1つの文書に外部ファイル(例えば XSL文書など)を参照する宣言が含まれます。整形式XMLサンプル
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl"
href="sample.xsl"?> ← 外部文書を参照
<magazineinfo>
<book>初心者のためのホームページ作り</book>
<author>ばんばん</author>
<content>XML初級講座</content>
</magazineinfo>
XMLデータと同じ1つのファイル内で、DTDのエンティティ宣言に、置き換え文字列を定義したものです。DTDのエンティティ宣言に、置き換え文字列を定義した整形式XML文書は、以下のようなコーディングとなります。エンティティ宣言によるサンプル
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE magazineinfo [ <!ENTITY ext "Extensible Markup Language"> ← エンティティ宣言 ]> <magazineinfo> <book>初心者のためのホームページ作り</book> <author>ばんばん</author> <content>XML(&ext;)初級講座</content> </magazineinfo>
&ext; というエンティティが、「Extensible Markup Language」に置き換えられて記述されているのがお分かりと思います。XML文書の構成パターンの3つ目は、XMLデータと同じファイル内に記述した DTDのエンティティ宣言に、外部ファイルの参照の定義を記述したものです。DTDのエンティティ宣言で定義した外部ファイルは、XMLデータから参照することができます。内部DTDに外部ファイルの参照を定義したサンプル
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE magazineinfo [ <!ENTITY w3c SYSTEM "sample2Linkw3c.xml"> ← 外部ファイルの参照 ]> <magazineinfo> <book>初心者のためのホームページ作り</book> <author>ばんばん</author> <content>XML初級講座</content> <link>&w3c;</link> </magazineinfo>
XML文書の構成パターンの4つ目は、XMLデータとは別の外部ファイルに記述した DTDのエンティティ宣言に、置き換え文字列の定義を記述したものです。XML文書に、この DTDの外部ファイル宣言を記述することで関連付けは行われ、外部DTDのエンティティ宣言で定義した置き換え文字列は、XMLデータから参照することができます。外部DTDに置き換え文字列を定義したサンプル
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE magazineinfo SYSTEM "sample.dtd"> ← 外部ファイルを参照 <magazineinfo> <book>初心者のためのホームページ作り</book> <author>ばんばん</author> <content>XML(&ext;)初級講座</content> </magazineinfo>
DTDが外部にあり、その外部DTDから、エンティティを参照しているのが理解できると思います。XMLデータとは別の外部ファイルに記述した DTDのエンティティ宣言に、外部ファイルの参照を定義したものです。DTDから、さらに先の外部ファイルの参照を定義するものです。