システム実装パターン最後のセクションではアプリケーションやシステムにXMLを取り入れるときのパターンをいくつか紹介する。XMLを使ったシステムと言っても、XMLは非常に柔軟性が高いので、その利用方法は実に多様である。いずれにしてもXMLの特徴や優位性をよく吟味して、利点を最大限に高めるようなアイデアそのものが成功の鍵をにぎっているといえるだろう。目的別に大きく分けると以下の2つになる。データとしてXML文書を蓄積、Webページへ変換コンテンツのデータをXML文書として保存し、それをXSLTと掛け合わせてWebページを作成する方法がある。データとスタイルが別に管理できる点はデータ更新の効率化に役立てることができる。XML文書とXSLTのスタイルシートを使用してHTMLを生成すれば、ユーザーはページがXMLでできていると意識することはあまりない。表示されているものはHTMLそのものだからだ。それにさらにスタイルシートを組み合わせたりするのが一般的だ。この場合、HTMLのオーサリングのような多彩な機能を持つXML文書のオーサリングツールがないため、定型的なデータを持つXML文書をHTML化することが多い。この場合、XML文書からPCのWebブラウザ用、iモード用など複数のHTMLを生成するといった、1ソースでマルチユースを実現する手段として使われることが多いだろう。eコマースでのデータフォーマットeコマースにおいて、データを汎用的なXMLにして送受信することもある。いわゆるEDIやBtoBのeコマースなどにおいて、トランザクション用のデータをXML文書化するパターンだ。従来までの方法ならデータのやりとりに固定長のデータやCSVが使われていたが、XML文書にすれば可変長のデータが扱えたり、タグでデータに意味を持たせることができるので、データの順番を変更することもできるようになり、表現が柔軟になる。これはシステムにとって拡張性を高め、将来のシステム仕様変更に柔軟に対応できる可能性をもたらす。通信相手が固定の1対1のシステムなら相手方の都合のみに対応すればよかったが、不特定多数を相手にするようなeマーケットプレイスのような場ではデータのXML化がシステムの効率化に役立つこともある。データを汎用的なXML形式にしておくことで、バイナリ形式やCSVなどと比べてデータの内容の把握が容易になるため、取引相手が複数になった場合でもシステム対応が容易となり、結果的にトータルのシステム対応工数の削減につながった例もある。XMLはさまざまなデータを表現できる。その応用範囲はきわめて広いここでは大ざっぱに2タイプに分類したが、詳細や具体的な利用方法はまたさらに多種多様だ。どちらのパターンにしてもデータがXML化するタイミングやその範囲や寿命はまちまちだ。最初からXML形式でデータがストアされていることもあるし、何らかのタイミングでXML化して必要なデータを切り出したり、逆にXML化されたデータを任意のシステムに取り込んだりすることもある。XMLのシステムは画期的なものが多いが、XMLデータそのものの実体はあまり目立たないことが多い。現在ではあらゆる業界や分野でシステムのXML化が検討されている。あらゆる共通なデータをXML化するためにXMLから派生した各分野用の応用技術も次々に発生している。従来までは限られた範囲でしか使われなかったシステムが真の意味でオープン化に向けて動いている。XMLの適用範囲は多種多様だあらためてXMLという技術を振り返ってみると、XMLそのものはシンプルなデータの形式を決めているだけであるにも関わらず、その適用範囲は非常に広範囲にわたり多様である。それはXMLの持つ自由度の高さに由来しているといえるだろう。例えるなら、XMLは自由に形を変えることができる粘土のようなものだと私は考えている。ユーザーの必要性や発想によって形を変え、あらゆるシステムに接続する便利な粘土だ。XMLという技術の知名度や導入事例は日々高まっている。スキーマ言語のような重要な仕様がまだ落ち着いていないことに象徴されるように、いまだ未完成の技術でもある。それでもすでにRosettaNetのように実際のビジネスで使われてもいる。XMLは現代のネット社会が生んで育てている現在進行形の技術であるとも言えるだろう。読者と一緒に、XMLの今後の動きに期待したい。eXchangeフォーラムで興味のある記事を検索して読んでみてもらいたい。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。