整形式文書(well-formed XML document)とは、xmlの文法を守った最も簡単な文書。
xml宣言
xhtmlにおいてはxml宣言は必須項目ではない。またxml宣言をすることによって、IEは後方互換モードになるという問題もあって、xhtmlにxml宣言をしていないことは多いと思う。自分も最近までxhtmlにxml宣言は書いていなかった。
しかし、まずxmlファイルではxml宣言をすることからスタートする。拡張子はとりあえず「.xml」で。のちに他の拡張子がでてくることだけ留意しておこう。
まずは、xml宣言を見てみよう。
<?xml version="1.0" encoding="utf-8" ?>
ちなみにversionはXML仕様のバージョン、encodingはXML文書で使われている文字コード(utf-8、utf-16の場合はは省略できる)。
ルート要素
2つのサンプルを比較してみよう
<?xml version="1.0" encoding="utf-8" ?>
<音楽>
<バンド名>ビートルズ</バンド名>
<代表曲>ストロベリーフィールズフォーエバー</代表曲>
</音楽>
<?xml version="1.0" encoding="utf-8" ?>
<バンド名>ビートルズ</バンド名>
<代表曲>ストロベリーフィールズフォーエバー</代表曲>
上が正しくて、下は間違い。つまりXML文書の本体部分は、必ず単一の要素の中に収まっていなければならないというルールがある。そしてその単一の要素をルート要素と言う。
さまざまデータ表現方法
下の2つの例はどちらも同じ情報を記述している。
<?xml version="1.0" encoding="utf-8" ?>
<音楽>
<バンド名 出身="UK" メンバー="4">ビートルズ</バンド名>
<代表曲>ストロベリーフィールズフォーエバー</代表曲>
</音楽>
<?xml version="1.0" encoding="utf-8" ?>
<音楽>
<バンド名>ビートルズ</バンド名>
<出身>UK</出身>
<メンバー>4</メンバー>
<代表曲>ストロベリーフィールズフォーエバー</代表曲>
</音楽>
上は属性を利用した記述、下は要素を利用した記述であるが、どちらが正しいというはない。使用目的・使用方法によって臨機応変に使い分ける。