ebXMLは,インターネット上で提供される多様なサービスを共通のインタフェースで利用できるようにする技術。2001年3月にも,米IBMや米サン・マイクロシステムズが参加する標準化団体が仕様をまとめる。同様の標準としてはSOAPやUDDIがあるが,機能面ではebXMLの方が優れている。新しいWebサービスを利用するときに,システム変更の手間が少なくなる。もっともSOAP/UDDIは普及することがほぼ確実なため,ebXMLはこれらの標準と共存していくことになりそうだ。 

(安東 一真=andoh@nikkeibp.co.jp)

 インターネット上のさまざまなサービスを,共通のインタフェースで利用できるようにする――。そのための標準規格がまもなく登場する。2001年3月にも仕様が固まる「ebXML」(電子ビジネスXML)である。

 インターネット上では,物流や決済などのさまざまなサービスが提供されている。しかしこれまでは,サービスごとにそれを利用するためのインタフェースがバラバラ。新しいサービスを使ったり,サービスを切り替えるときにECサイト側のシステムを手直しする必要があった。ebXMLを使えば,こうした手間を減らすことができる。

 異なる企業間のシステムを連携させる場合も同じだ。ebXMLを使うことで,受発注や見積もりといった,取引先のサービスを共通のインタフェースで呼び出せるようになる。BtoB(企業間)ECシステムの構築が容易になる。

 これからのECシステムは,こうしたさまざまなサービスを組み合わせて構築することになる。自前で構築するのは,自社の競争力となり得るサービスだけ。ほかは他社のサービスを使って,コストを安く抑える。いわゆる「Webサービス」を活用するのである。もっともWebサービスを手軽に使えるようにするには,各サービスに共通のインタフェースが必要。ebXMLは,そのための標準規格を目指したものである。

XMLだけでは不十分

図1●ebXMLの仕組み
さまざまな企業のWebサービスを登録したレジストリが中心になる。レジストリには,Webサービスの呼び出し手順などを登録しておく。この呼び出し手順をダウンロードするだけで,Webサービスを利用できるようにする。

 Webサービスや,BtoBのECシステムで利用する標準には「XML(拡張可能マークアップ言語)」がある。XMLは,異なるシステム間でやり取りするメッセージを記述するための標準言語。XMLメッセージを使えば,利用しているデータの形式が違っていてもシステム同士を連携させやすい。

 ところがXMLを使っても,実際に異なるシステム間をつなぐにはデータ形式の変換などの開発作業が伴う。「Webサービスを使うたびに,システム・インテグレーションのコストがかかっているようでは普及はおぼつかない」(イー・ブリッジ コンサルティング本部長の岡部 恵造氏)。ebXMLは,Webサービスにアクセスするための手順などをXMLで記述するための標準規格を設けることで,そうした作業を減らす狙いがある。Webサービスの「プラグ&プレイ」を目指しているのである。

 ebXMLの仕組みは以下の通り。まず,Webサービスを「リポジトリ」と呼ぶデータベースに登録する(図1[拡大表示])。Webサービスを利用する企業は,そのリポジトリにアクセスし,そのWebサービスを利用するためのインタフェースをダウンロードする。インタフェースとは,Webサービスを呼び出すためのメッセージ形式や,メッセージの呼び出し順序などである。基本的にこれだけでWebサービスが利用できるようになる。

SOAP/UDDIと並存する

図2●ebXMLとSOAP/UDDI/WSDLのねらいはほとんど同じ
開発を主導したグループが違うだけで,定義する仕様の範囲はあまり変わらない。しかもSOAPなどの開発を担った米IBMは,ebXMLの開発にも積極的に参加している。

 このようにebXMLはECシステム構築にとって重要な標準だが,実は同様の標準がほかにもある。SOAP(簡易オブジェクト・アクセス・プロトコル),UDDI(ユニバーサル・ディスクリプション・ディスカバリ・アンド・インテグレーション),WSDL(Webサービス記述言語)と呼ぶ3つの仕様である。この3つの仕様を合わせると,対象範囲がebXMLと似た形になる(図2[拡大表示])。XMLをベースにしている点でも,両者は共通している。

 SOAP/UDDI/WSDLは,米IBMや米マイクロソフトが主導して開発してきた。すでに多くのベンダーが対応を表明している。今後の業界標準になることはほぼ間違いない。

 これに対してebXMLのメリットは何か。強みは2つある。1つは,SOAP/UDDI/WSDLよりも広範囲な規格をカバーしていること。もう1つはSOAPやUDDIと並ぶ形で,ベンダーやユーザーから,しっかりとした支持を受けていることである。

 ebXMLは,OASISとUN/CEFACTという2つの標準化団体が共同で開発している。実は,SOAPなどを開発したIBMは,ebXMLの標準化作業にも積極的にかかわっている。IBM以外にもSOAP/UDDI/WSDLに賛同する多くのベンダーがebXMLの標準化作業に加わっている。大きな影響力をもつマイクロソフトもその1社だ。

 2000年12月に,IBM,米サン・マイクロシステムズ,NTTコミュニケーションズ,富士通など13社が,ebXMLシステムの相互接続実験を米国サンフランシスコで開催した。その際にebXMLの完成を,それまでの2001年5月から2001年3月に,2カ月早めることを明らかにした。SOAPなどの標準に遅れをとりたくないためであろう。

 企業間ECを実現するBtoBサーバーの国内ベンダーでは,インフォテリア(本社:東京)がebXMLに積極的だ。「すでに製品化を発表しているロゼッタネットと日本アリバの仕様に対応した後でebXMLにも対応する予定」(平野 洋一郎社長)である。

 ebXMLのユーザーとしては,食品メーカーやその小売店など85万社が参加するGCI(グローバル・コマース・イニシアティブ)という団体が,採用を表明している。

 このようにある業界がebXMLを採用すれば,将来的にSOAP/UDDI/WSDLを使う業界とebXMLを使う業界が分かれるかもしれない。最終的には,この2つの仕様は1本化されるかもしれないが,しばらくは並存して普及していくと見られる。ECシステムを設計するなら,SOAP/UDDI/WSDLとebXMLのどちらが普及しても対応できるようにした方がよさそうだ。

Webサービスをきめ細かく定義

 ebXMLの仕様は,大きく3種類に分かれる。Webサービスを定義するための仕様,Webサービスへのアクセス・プロトコル,リポジトリへのアクセス・プロトコルである。

 このうちWebサービスへのアクセス・プロトコル「トランスポートとルーティング,パッケージング」は,SOAPとほぼ同じ機能を提供する(表1)。ebXMLでは,今のところSOAPとは異なる仕様を定めているが,「最終仕様では,現在の仕様とSOAPの両方をサポートすることになるだろう」(米XMLグローバル・テクノロジーズ ビジネス開発副社長のデビッド・ウェバー氏)。SOAPが業界標準として定着することはほぼ間違いないからだ。

 リポジトリへのアクセス・プロトコル「レジストリ&リポジトリ」も同様に,UDDIで既定済みのものとあまり変わらない。ebXMLでは,UDDIもサポートする予定だ。

 特徴的なのは,Webサービスを定義するための仕様。SOAP/UDDI/WSDLよりも,Webサービスをきめ細かく定義できる点が特徴である。「Webサービスの仕様をリポジトリからダウンロードするだけで,自動的にWebサービスにアクセスできるようになる」というプラグ&プレイ環境がより現実的になる。

仕様名 概要 項目の例
トレーディング・パートナ情報 企業のコンタクト先や,サポートする通信プロトコル,Webサービスを指定するための仕様 担当者の連絡先,企業の業種,サポートするWebサービス,通信プロトコル(HTTP,SMTPなど),セキュリティなど
ビジネス・プロセス Webサービスの処理手順を定義するための仕様 処理シーケンス図やクラス図など(図3参照)
コア・コンポートネント さまざまなWebサービスに共通の言葉(辞書) 企業名,住所,連絡先,費用,税金,商品分類,数量など
トランスポートとルーティング,パッケージング Webサービスにアクセスするためのメッセージ・プロトコル。MIMEがベース メッセージの内容,経路情報(送信元や受信先)など
レジストリ&リポジトリ リポジトリへの登録,検索のためのプロトコル 企業の業種,Webサービス,バージョンなどを指定して検索,など
表1●ebXMLの5つの仕様

メッセージの流れまで記述可能

図3●ebXMLとUDDIのWebサービスの定義方法
ebXMLでは,Webサービスの利用手順そのものを定義して,レジストリに登録できる。処理シーケンスや,状態遷移状況などを登録する。UDDIでは,Webサービスのプログラム・インタフェースしか登録しない。

 Webサービスを記述するためのebXMLの仕様は3種類ある。(1)Webサービス提供者のシステム概要を定義する「トレーディング・パートナ情報」,(2)Webサービスのインタフェース(処理手順)を定義するための「ビジネス・プロセス」,(3)さまざまなWebサービスに共通の言葉(企業名,連絡先,数量など)を定義する「コア・コンポーネント」である。

 この中で,Webサービスのインタフェースを定義するビジネス・プロセスに大きな特徴がある。ebXMLでは,UML(ユニファイド・モデリング言語)と呼ぶシステム設計言語を使ってWebサービスを定義する。UMLでは複数の図を使って,2者間や3者間のメッセージのやり取りを時系列で記述したり,プログラムの状態遷移をフローチャート形式で表現したりできる(図3[拡大表示])。これに対してWSDLでは,Webサービスごとのインタフェース(API)を羅列する機能しかない。Webサービスを呼び出す場合の順序や条件分岐などは記述できない。

 例えば,パソコン関連業界のサプライ・チェーンの仕組みを標準化したロゼッタネットには,メッセージのやり取りを定義したPIPという仕様がある。UMLならPIPで定めたメッセージの流れまで定義できるが,WSDLでは不可能である。

 もっともWSDLは単純な分,ユーザーが簡単に導入できるというメリットがある。「複雑になりがちなUMLの利用がどれだけ広がるかは未知数」(イー・ブリッジの岡部氏)でもある。

取引先とプロトコルなどを調整

 異なるWebサービスが共通に利用する言葉を定めた「コア・コンポーネント」(前述の(3)参照)は,UDDI/WSDLにはない。コア・コンポーネントを使えば,異なる業界のシステム間で,メッセージを統一できる。

 「トレーディング・パートナ情報」(前述した(1)参照)には,Webサービスを提供するシステムで利用できる通信プロトコル(HTTPやSMTP)や,セキュリティ機能(SSLや暗号カギ長),ビジネス・プロセスなどを記述する。ただし同様の内容は,UDDIでも定義されている。

先行するSOAP/UDDI/WSDL

写真1●UDDIのディレクトリ・サービス
米アリバが運用しているディレクトリを検索したところ。米マイクロソフトを検索すると,マイクロソフトの連絡先や,提供しているWebサービスなどが表示される。

 製品への実装やディレクトリ・サービスの提供という面では,SOAP/UDDI/WSDLが先行している。マイクロソフトはすでに開発ツールなどでSOAPに対応済み。IBMは,WebSphereやDB2,MQSeriesなどのECシステム関連製品で,2001年前半までに,SOAP/UDDIに対応する予定である。UDDIのディレクトリ・サービスについては,IBMとマイクロソフト,米アリバが試験サービスを始めている(写真1)。

 このように先行するSOAP/UDDI/WSDLに対して,ebXMLの実装はまだこれからだ。ただ,インフォテリアのように,ebXMLを実装するベンダーは今後増えてくる見込みである。当分はその動向を注視しておきたい。