« 2007年02月07日 | メイン | 2007年02月09日 »
2007年02月08日
テキストファイル考(3) — XMLの場合
さて、具体的な例として、XMLを取り上げて見ます。
によると、XML文書の構成は、次のように規定されています。
「XML文書は実体という記憶単位から成り,実体は構文解析されるデータ又は構文解析されないデータから成る。構文解析されるデータは,文字から成り,その一部は文字データを構成し,一部はマーク付けを構成する。」
これを見ますと、XMLの構成単位の中心は、文字のみのデータ(テキスト系データ)であることが分かります。
そして、構文解析されないデータについては、次のように書かれています。
「解析対象外実体は,内容がテキストでもそうでなくともよいリソースとする。」ということで、XML文書にはバイナリ系データを含んで良いということになります。
そして、テキストとは次のように定義されています。
●テキストは、文字の並びであって,マーク付け又は文字データを表してもよい。
●文字 は,テキストの最小単位であって,[ISO/IEC 10646]に規定されている。使用できる文字は,タブ,改行,復帰及び(Unicode及びISO/IEC 10646に規定する)図形文字とする。
XMLの実体は、ファイルなどの形で保存されたり、交換されますが、そのとき、どういう方法で保存されるかが、文字符号化方式です。
「XML文書内の外部解析対象実体は,それぞれ別の文字符号化方式を用いてもよい。すべてのXMLプロセサは,UTF-8で符号化した実体,及びUTF-16で符号化した実体を処理できなければならない。」
例えば、Unicodeでは、文字に固有の番号を割り当てています。この番号は、Unicodeのコードポイントであって、ファイルなどに書くときは、符号化方式という計算式をつかって、別の番号のシーケンスにして交換します。Unicodeには、多数の符号化方式が提唱されていますが、一番ポピュラーなのが、UTF-8またはUTF-16となります。