矢沢 久雄

 これまでの連載では,XML自体の説明をしてきました。最終回となる今回は,XMLをベースとしたテクノロジの中から,特に注目すべきものをピックアップして紹介します。XMLによって,コンピュータの世界が統合されようとしていることを認識してください。XMLの重要性に気付いた数多くのベンダーが,XMLをベースとした様々なテクノロジを創出し続けています。マイクロソフトも,XMLに注目しているメーカーの1つです。

●XMLベースのマークアップ言語

 XMLをベースとして,特定の目的に特化した様々なマークアップ言語が開発されています(表1)。これらは,すべてテキスト・エディタで記述できるものです。従来は,それぞれのベンダーが自社アプリケーションの独自仕様で,数式やマルチメディア・データなどを表現していましたが,今後は,世界標準仕様であるXMLをベースとしたマークアップ言語が主流になるはずです。すでに,W3C勧告となっているものもあります。

名称用途(開発メーカー)
MathML数式を記述する(W3C勧告)
SMILLマルチメディア・データをWebページへ組み込む(W3C勧告)
MML電子カルテを記述する(電子カルテ研究会)
SVGベクトルを使って画像データを表現する(アドビ,マイクロソフト)
JepaX電子ブックを表示する(日本電子出版協会)
WML携帯端末にコンテンツを表示する(WAPフォーラム)
CHTML携帯電話にコンテンツを表示する(NTTドコモ)
XHTMLHTML 4.01をXMLで定義したもの(W3C勧告)
表1●XMLベースの主なマークアップ言語

 XMLをベースとしたマークアップ言語とは,特定のタグセットの意味合いを定義したもののことです。表1の例でいうと,MathMLではルート,べき剰,分数などの数式表現および特殊記号を表すタグ・セットが定義されています。例えば,aX2+bX+c=0をMathMLで表すとリスト1のようになります。ここで使われている様々なタグの意味合いを定義したものが,MathMLにほかなりません。

●電子商取引に最適なXML

図1●従来のEDIでは、電子商取引本来の目的を達成できない
 電子商取引の世界では,XMLのありがたみをしみじみ感じているはずです。電子商取引の世界では,何事も書類で処理されます。見積書,発注書,納品書,受領書,請求書…などなど,取り交わされる書類の数は,実に膨大です。インターネットを活用して,電子商取引のコストダウンと迅速化を実現するには,異なる企業間で書類を確実に受け渡す仕組みが必要なのです。そのためにはXMLが最適なのです。

 インターネットやXMLが登場する以前は,大企業が主要取引先とだけ専用線でVANを結んで書類を交換するEDI(Electronic Data Interchange)と呼ばれる手法が存在していました。ただし,特定の企業とだけ高価な専用線で結び,かつ企業間でそれぞれ独自仕様の書類を使っていたため,電子商取引本来の目的を達成するには至りませんでした(図1[拡大表示])。

図2●インターネット+XMLなら,電子商取引本来の目的を達成できる
 インターネットは,世界中の企業を結ぶ,汎用的かつ安価な通信網です。XMLは,世界レベルで統一されたデータ格納形式です。タグの意味さえ企業間で統一しておけば,インターネット+XMLによって,真の意味で電子商取引が実用化できます(図2[拡大表示])。XMLベースの電子商取引は,国連と非営利団体によるebXMLや,マイクロソフトによるBizTalk(ビズトーク)などによって標準化が進められています。

●XMLでプログラムの連携を実現するSOAP

図3●SOAPはXMLをベースとしたプロトコルである
 マイクロソフトは,インターネットをプラットフォームとして分散プリケーション環境を実現する.NET(ドットネット)を推進しています。.NETでは,異なるコンピュータ上にWebサービスと呼ばれる単位でプログラムを配置し,それらを相互に連携させることで,目的のソリューションが得られることが特徴です。.NETでは,XMLをベースとしたSOAP(Simple Object Access Protocol)と呼ばれるプロトコルでWebサービスを呼び出し,その結果もXML形式で返されるようになっています(図3[拡大表示])。

 電子商取引の場合と同様,インターネット+XMLがあってこそ,.NETが実現できるのです。.NETでは,コンピュータの機種やOSの種類を問わず,複数のコンピュータを連携させることが可能です。XMLによって,データ交換だけでなく,プログラムの相互利用まで実現できたことになります。.NETは,登場したばかりのテクノロジですが,すでにいくつかの企業が導入を始めています。筆者は,.NET早期導入企業の取材をしていますが,.NETの導入を決定した企業では,「SOAPのように汎用的なテクノロジーでコンピュータを接続していないと,いずれ自社のコンピュータは孤立し,市場から取り残されてしまうだろう」と口を揃えたように話してくれます。正にその通りだと思います。SOAPは,商用ASP(Application Service Provider)を実現する手段ともなります。

●身近なアプリケーションもXMLに対応

 従来のアプリケーションでは,アプリケーション固有のデータ形式が使われていました。コンバータを使えば,例えばワープロ・ソフトである一太郎の文書をMicrosoft Wordに読み込むことも不可能ではありませんでしたが,変換しきれない部分が残ってしまうこともありました。アプリケーションのデータ形式にXML文書が使われることが一般的となれば,様々なデータを異なるアプリケーションで再利用することが可能になるはずです。

 ふだん皆さんが使っている身近なアプリケーションでも,XML対応が進められています。例えば,Microsoft Officeの次期バージョンであるMicrosoft Office XPのMicrosoft Excelでは,XMLサポートと呼ばれる機能が追加され,データをXML文書として保存することや,スタイルシートの設定を含めてXML文書を読み込むことが可能になります。

 XMLの素晴らしさは,何と言っても,それが世界レベルで統一されたデータ形式であるということです。SOAPのように,XMLによってプログラムの連携を実現するテクノロジも実用化されています。ソフトウエアというものは,データやプログラムを再利用してこそ価値があるものです。再利用が,コンピュータの利用目的である効率化とスピード化を実現する最適な手段のはずです。この世にコンピュータが登場してから半世紀以上を経過していますが,XMLによって初めてソフトウエアの再利用が実現されたと言えるでしょう。XMLが,コンピュータの世界にもたらした恩恵は,計り知れないほど大きなものです。

 この講座をお読みいただいたことで,「なるほどXMLとは,こういうものだったのか!」と思っていただけたなら幸いです。XMLブームに乗り遅れた焦燥感は,無事に解消されたことでしょう。実際の業務でXMLを活用するかどうかは,皆さんのご判断にお任せします。すぐにXMLを使う必要などないと思われる人もいるかもしれません。ただし,世界レベルでXMLを標準的なデータ形式とする動きがあるのは,まぎれもない事実です。今後もXMLを取り巻く技術動向から決して目を離さないでください。皆さんのご健闘をお祈り申し上げます。

※この講座で取り上げたトピックやXML自体に関してさらに詳しくお知りになりたい場合は,インターネットで目的のキーワードを検索されることをお奨めします。仕様書,活用事例,入門記事など,膨大な情報が得られることに驚かれることでしょう。