成功を収めているマイクロソフトがなぜ.NETという新しい言葉を出してきたかは必然があってのことである。
MS-DOSの全盛期にWindowsなど要らないといわれたが,現実にはWindowsが爆発的に普及した。現在新しいパソコンを買うと,Windows XPがプレインストールされており数はたくさん出ているが,Windows3.0からWindows95への急勾配に伸びるようなマーケットの拡大は望めなくなっている。マイクロソフトがこれまでどおり成長を維持していくためには,今のWindowsに頼っていられないという事情があり,そういうなかで出てきたのがMicrosoft.NETである。
今インターネットが普及し,ブロードバンドということで高速なネットワークが常識化している。会社だけでなく,家庭においてもどんどん普及している。
ネットワークがこれだけ普及してくると,ネットワーク上でできることも非常に便利になり,例えば,出張する場合は飛行機の予約にWebが使える。このような環境になると,アプリケーションの価値がネットワークの中に埋没してくる。以前ならWindowsやOfficeというと非常に価値があったが,今は必要なものをGoogleで簡単に検索を掛けて調べられるなど,アプリケーションの独立性が,インターネットによってぼやけてきた。このためパッケージソフトを売るのではなく,インターネットをビジネスに取り込んでいくことが,マイクロソフトにとっては非常に重要なテーマになっている。
アプリケーションなのかネットワークサービスなのかという境界がなくなりつつある。何か調べたいことがあってWebページを見るには,Webブラウザを起動させる。文書を書くにはWord,表計算するならExcelが一般的なスタイルだが,Wordを起動させて文書を作るとかExcelを起動させて表を作るのではなく,文書の中に表が入り,その中で表計算をして数式の処理をしたいということも当然ある。今後はその中にネットワークサービスが入り,文書を作りながらも,その同じ画面の中でインターネット上のある何かを検索して,その結果を使うようになるかもしれない。コンピュータ用語事典のようなものが,アプリケーションの後ろ側で検索され,その答えが自分の作った文書に反映されるような時代に向かっており,それを実現するための技術として,Webサービスが提唱されている。そしてこれを実現する環境として,マイクロソフトはMicrosoft.NETを提唱している。
WebサービスはWebが背景にある。HTML,HTTP,ブラウザ,Webサーバといったものがキーワードになっている。しかし,Webシステムはコンピュータの中に入っているデータを人間に見える形にして見せているだけで,人間がそれを解釈して次のステップに進む。例えば,検索するなり予約するなりして,気に入ったかどうかは人間が判断する。情報が種々雑多でも人間が何とかするシステムである。Yahoo!で検索の結果出てきた文章は人間が見て判断している。
一方,これを機械化しようと思うと,例えばホテルと宿泊客の関係はB2Cであるが,ホテルと旅行会社の間をインターネットを使ってつなぐのはB2Bである。そのためにはその間に手続きを決め,データフォーマットを決める必要がある。ところが,ある特定のホテルチェーンと旅行会社とが規約を決めてしまうと,第三者のホテルやホテルチェーンが入ろうとした時に,既にあるものに合わせる必要がある。もし,既にあるホテルチェーンの特徴に特化されている場合は,なかなか入りづらい。
Webの世界には,ブラウザがありHTMLという規格があり,ブラウザにどういうデータを流したらどう見えるかが決まっている。従って,ある程度人間にとって理解できる範囲に情報を集約することができるが,B2BのためのデータフォーマットにXMLを使うと,XML自体はデータ構造を決めるための言語に過ぎず,決められたデータ構造はどんなデータ構造でもよいため,適当に決めたもの同士を合わせるのは難しくなる。そのため決め事が必要ということでWebサービスが出てきた。
一昨年くらいからマイクロソフト,IBMほか何社かで基本的な枠組みとして,UDDI (Universal Description Discovery and Integration) というインターネットを使ってB2Bを行うための決め事を考えた。
人間のための検索サイト,例えばYahoo!やGooなどがあるように,B2Bのための検索サイトで,B2Bの世界でも検索が必要であるとして考え出されたのがUDDIである。情報を貯める,情報を取り出す,登録するなど,ある程度の規格を決め機械でもできるようにするためである。
XMLでB2Bの文書を決めようというと,大抵納品書などを設計するが,実際のインフラで使おうとすると,そこには「○×会社御中」と書いてあるだけで,実際の担当者の名前がないからだれに渡すか分からない。
そのために封筒を考える。人間の世界でも便利なので,機械でも便利だろうと考え出されたのがSOAPである。SOAPは封筒で,封筒の中に送りたい文書も入れられ,ヘッダーと呼ぶ宛名書きも後付けで定義できる。そういう便利な構造を使いインターネット上でデータ交換を行う。封筒のやり取りだけを決めて,封筒が最終的に渡ればいいという考えである。実際の通信プロトコルは,Webブラウザが使っているHTTPでも電子メールでも,フロッピーディスクに入れて渡してもいい。最終的にそれが渡り,封筒を開けると何をすればいいかが書いてある。戻りも,何をすればいいかをまた別の封筒に入れて渡す。渡すメカニズムはまた別に考えるという仕組みである。
WSDLは,受け取るXMLのデータは何で,何をするかを規定している。例えば注文書.xmlを受け取って,注文請書.xmlを返すというようなことが書いてある。WSDLという形式で,自分のサービスはこういうものだと書き,それを検索サイトであるUDDIに登録しておく。このようにUDDI/SOAP/WSDLなどで規定されたサービスがWebサービスである。
電子辞書のWebサービスがある。電子辞書のサービスはWebベースでいろいろあるが,イースト社はいろいろな辞書をWebサービス化している。デジタルアドバンテージ社も,コンピュータの用語辞典をWebサービス化している。
例えばSOAPと入れて検索すると,返ってきたものは,SOAPの用語辞典になっている。Webベースで見ると普通の電子辞書に見えるが,用語辞典の中にいろいろなリンクが貼られている。これも実はバックエンドのWebサービスを呼ぶようになっている。クリックすると,実際に用語辞書のWebサービスを呼びに行って返ってきたものを表示させる。
これを作っているデジタルアドバンテージ社は出版系の会社で,自分たちの編集のシステムに,Windowsベースのエディタのようなアプリケーションがあり,そこで原稿を作っている。その時にいろいろな用語が必要になるので,このシステムで直接どんどん貼り付けたり,バックエンドのデータベースにない場合は,ここでまたデータベースに用語辞典で入力していくというような形で編集のシステムを組んでいる。
(通信&メディア研究会)
2002/08/20 00:00:00