XMLとは?


新情報時代の幕開け

私たちは、あらゆる情報を格納し、計算し、そして整形する手段として、パーソナルコンピュータを代表とする、「コンピュータ」に依存するようになりました。 コンピュータは、記録、計算、整形といったことに関して、人間よりはるかに優れます。

さらに現代では、この情報がインターネットを通して多くの人に提供されるようになり、様々な意味を持つ情報が互いに交換されるようになりました。 まさに、今あなたが読んでいるこの文章もまた、インターネットを通じて交換されている情報のひとつです。

ただし、インターネットで情報を公開するには大きな障害があります。 それは、情報を要求したクライアントに依存してはならないということです。 HTML は仕様が簡単で、抽象的に文書を表現することで論理的にクライアントに依存しません。
こうした、HTML は今日まで Web ページの記述方法として普及してきたのです。

ところが、HTML には大きな問題があります。 これは、実際に多くの人が気付いているでしょう。

この問題に直面するのは、例えば化学を取り上げた Web ページを作ろうとした時です。 化学を解説する場合、当然ですが原子記号や化学式が頻繁に出てきます。 さぁ、あなたのこれまでの経験を活かして化学式をテキストで表現してください。

テキストで化学式を表現するのは H-O-H (水)の様に簡単なものだけで、ベンゼン等の複雑な形になってくれば、それは画像を使うしかありません。 画像を使えば一部を修正するのにも苦労をします。 何より、解析するアプリケーションはそれを化学式であると理解できません。

これは数学でも同じで、複雑な方程式を HTML で表現することはできません。 あなたが漢文ファンで、韓愈の文章の一部を引用しようとしても同じ問題がおこります。 HTML にはレ点などを意味するタグがないからです。

あなたが音楽家でも同じです。 作曲家は、自分が作曲した曲の楽譜を Web で公開する方法がないのです。 何らかのアプリケーションに依存したバイナリファイル等になってしまうでしょう。

学術関連のサイトを構築すると、HTML の制限に苦しめられることになります。 まともに作れるのは社会系と英語くらいなものであることに気がつくことでしょう。

さて、長々と現代まで続いた HTML 及びテキスト形式の問題を挙げてきました。 そして、これらを解決する手段は長年見つからなかったのです。 画像などで無理やり表現するか、アプリケーションに依存したファイルを使うかだたったのです。

しかし、長年多くの科学者たちが望んだこの解決策が生まれたのです。 それが XML(eXtensible Markup Language) 「拡張可能意味付け言語」です。

ここで紹介する XML という仕様は、これらの問題は一度に解決するばかりか、これまで困難だった、実現不可能だった高度で柔軟なデータ交換を可能とします。 この XML はオープン仕様なので、企業などに独占されたものではありません。 会社の特殊なドキュメントを数十年後まで残し、使いつづけたいのならば、Microsoft など、企業が作ったワードの特殊なデータ形式を使うのをやめて、ここで紹介する XML 文書に全てをシフトさせることを推奨します。

もちろん、個人で使っている文書や Web サイトも同様に XML にシフトするべきです。 これまで不可能だったあらゆるデータ表現を実現できるようになるでしょう。


XML パーサ

XML は HTML 同様に、エディタなどで書かれたテキストにすぎません。 HTML がブラウザによって処理されたように、XML 文書もまた、何らかの専用アプリケーションで処理される必要があります。

この、XML 文書を診断、整形するプログラムを XML パーサ、または XML プロセッサ と呼びます。 XML パーサは、文書を解読してツリーとノードにに分解します。 そして、この情報を必要としているアプリケーションに渡すという仕掛けになっています。

情報提供者 XML 文書 XML パーサ 出力用ソフト ユーザ

XML 文書が Web で使用されていれば、XML パーサはブラウザにデータを渡すでしょう。 しかし、XML は HTML ではありません。 その使い方は、Web サイトだけにとどまらないということをよく理解する必要があります。 楽譜を表現した XML 文書を、音楽として再生するアプリケーションも出現するかもしれませんし、化学式を解読して、三次元で分子をグラフィカルに表示することもできるかもしれません。 とにかく、そのくらい XML とは柔軟にデータを表現することができるのです。


XML アプリケーション

XML は、特定の分野の意味付け言語を作成するための言語と言う事ができます。 すなわち、HTML そのものを XML で作ることも可能なのです。 (実際に XHTML と呼ばれる XML 版 HTML が存在しています。)

このように、XML をベースにした意味付け言語を総称して、XML アプリケーション と呼びます。 XML に関連したソフトウェアを指すわけではないので、注意してください

XML アプリケーションは、標準団体が定めたオープンなものから、Microsoft 等の企業が作成した自社アプリケーション用の物まで幅広くあります。 例えば、化学用の XML アプリケーションで CML と呼ばれるものがあります。 数学用の MathML や、マルチメディア表現用の SMIL、ベクタグラフィックスの SVG などもそうです。

標準団体の XML アプリケーションの多くは、実践にはまだ使われていないもので、策定中のものなど「絵に描いた餅」です。 しかし、Microsoft 等が定める一部の XML アプリケーションは IE 等で導入されています。



戻る次のページへ