.NET Enterprise ServersのXML度を探る
BizTalk Server 2000 |
.NET Enterprise Serverの中で、現在のところXML機能の中心にあるのが、「BizTalk Server 2000」(以下BizTalk Server)だ。これは、現段階での.NET Enterprise ServersのXML機能の役割の中心が、BtoBの実現にあることを示しているといえる(今後はもっとあらゆる機能のためにXMLが使われることになるのだろうが)。
BizTalk Serverは、ほかのサイトとXML文書を交換することでBtoBを実現する機能を備えたサーバである。その機能は、XML文書を取引先とやりとりするための文書フローの定義などを行う「BizTalkオーケストレーション・サービス」と、データをXML文書に変換したり、フォーマットのチェックなどを行う「BizTalkメッセージング・サービス」の2つに分けることができる。
■BizTalkオーケストレーション・サービス
ビジネスプロセスの例 1つの取引を終わらせるまでに、さまざまな情報交換を繰り返さなければならない |
BtoBを実現するには、他社と取引のための情報を何度も交換しなければならない。例えば、何か注文をしたいときには、相手が提供しているカタログを入手して、注文したい製品が提供されているかどうかを確認する。製品が見つかったら、見積もり依頼を出して見積書をもらい、価格の折り合いがつけば、注文書を送付する。さらに、注文が確実に届いたか確認できたら、納期を知らせてもらい、納期までに注文の品が届けば納品書を送り返す。もちろん、こうしたやりとりに、複数の企業がかかわることもあるだろう。
BtoBの分野では一般に、こうした取引に関連する一連の社内/社外の動作を「ビジネスプロセス」と呼んでいる。BtoBを実現するためには、注文、納品、出荷指示、信用確認などさまざまな場面に対してビジネスプロセスを設定しなければならない。もちろん、こうしたビジネスプロセスは1社のみで決められるものではなく、BtoBに参加する企業間で合意され、実装されている必要があるわけだ。
と同時に、ビジネスプロセスのさまざまな場面ごとで、システムの連携が必要だ。社内の在庫管理や出納管理などのサーバとの連携、社外の取引先との受発注関連のサーバとのやりとりなどである。
|
BizTalkオーケストレーション・サービスとは、このビジネスプロセスを設定することと、さまざまなサーバとの連携をすることの両方を担う。つまりビジネスプロセスを「実行」するのがこのサービスの役割だ。
そして、BizTalkオーケストレーション・サービスを実現するためのコンポーネントとして用意されているのが、「BizTalkオーケストレーションエンジン」である。これはビジネスプロセスを実行する2つの機能を持つ。
1つ目の機能は、「BizTalkオーケストレーションデザイナー」による、ビジネスプロセスの定義機能だ。BizTalkオーケストレーションデザイナーは、フローチャートを描くような方法で、ビジネスプロセスをビジュアルに定義できる。BizTalk Serverが、どのアプリケーションやサービスと連携し、そのときどのような動作を行うのか、その後の処理の分岐や結合、繰り返し、待ち合わせなどのロジックを定義する。そして、定義された内容は「XLANG」と呼ばれるBizTalk独自のXML文書形式のスクリプトとして吐き出され、それをBizTalkオーケストレーションエンジンが解釈、ビジネスプロセスが実行されることになる。
もう1つの機能は、COMコンポーネントの呼び出し、MSMQ(Microsoft Message Queue Server)との連携、SOAPを通じた外部のアプリケーションやサービスとのやりとりなど、ほかのサーバやシステムとの連携機能だ。ビジネスプロセスの実行の途中では、社内/社外のサーバと、情報のやりとりなどのさまざまな連携が発生する。BizTalkオーケストレーションエンジンは、そのためのインターフェイスを備えている。
BizTalkオーケストレーションデザイナーの画面
(クリックすると拡大します) Visioをベースにしており、ビジネスプロセスの定義と実装をグラフィカルに設定する。コンポーネントやサービスの実装と、それらを結びつけるロジックを分離できる |
■BizTalkメッセージング・サービス
前述したBizTalkオーケストレーション・サービスがビジネスプロセスの実行を処理する機能を備えているのに対し、BizTalkメッセージングサービスは、企業内/外とのデータ交換を実行するための機能を備える。具体的には、データの定義、変換、送信、受信に関連した処理だ。
BizTalk Serverのアーキテクチャ XMLのストアにはSQL Serverを利用。外部とのやり取りの方法を設定し、行うのが「BizTalkメッセージング・サービス」になる |
|
社外とのやりとりのほとんどの場面では、通信プロトコルにHTTPやSMTPなどが使われることになる。しかしBizTalk Server自身は、HTTPやSMTPによる通信機能は備えておらず、そうした通信機能はInternet Information Server(IIS)やExchange Serverと連携して行う。例えばSOAPをHTTPにのせて外部と情報をやり取りする場合には、情報をSOAP化するところはBizTalkが、その後HTTPで送信するところはIISが担当する。
どういった場面でどのサーバと連携して、どのプロトコルを利用するのか、という定義はあらかじめ「BizTalk管理デスク」で定義しておくことになる。外部とのやりとりは、主にSOAPをIIS経由でHTTPもしくはHTTP/Sで行うことが多いと思われるが、SOAPをSMTPによって送信することもできる。また、特定のフォルダなどにファイルを置いておき、読み込んでもらうような、いわゆるファイル渡し方式も可能だ。前述したように、MSMQやDCOM経由でも可能である。
情報交換に利用するドキュメントの定義は、「BizTalkエディター」で行う。もちろん、生成されるのはXML文書の形式になるためXMLの形式を扱えることはもちろんだが、EDI形式のほか、フラットファイルやCSV形式のドキュメントも扱うことができる。
「BizTalkマッパー」は、BizTalkエディターなどで作成されたXML文書を変換するための機能を提供する。他社から送られてきたXML形式の文書を、自社内の形式に整形したり、自社内の文書でも、必要な個所だけを抜き出して特定の部門に転送する、といったことが可能だ。
変換には基本的にはXMLに関連したXSLTの技術を利用しているが、「Functoids(ファンクトイド)」と呼ばれる独自の拡張機能を備えている。Functoidsは、XSLTのスタイルシートや関数以外にスクリプトを実行する機能であるため、XML文書中の値に対して計算をしたうえで書き換えたりと、高度な変換を実現する。XSLT機能を提供するのは、マイクロソフトのXMLパーサ「MSXML」というモジュール。これはInternet Explorerでも利用可能な、同社共通のXMLパーサだ。
BizTalkには、ここで扱われるすべてのXML文書を格納し、またメッセージのやりとりをトラッキングする機能もある。メッセージの信頼性確保には不可欠な機能だ。データの格納にはSQL Server 2000が使われており、XML文書はTEXT型として丸ごと格納されている。
BizTalkマッパーの画面
(クリックすると拡大します) 取り引き企業ごとにXML文書の形式が変わったとしても、BizTalkマッパーを利用して形式を変換。統一したフォーマットにすることができる。ここで設定した変換マップは、XSLTに変換される |
「SQL Server 2000」 |
Index | |
.NET Enterprise ServersとXMLの関係 | |
各サーバのXML機能概要 | |
BizTalk
Server 2000 BizTalkオーケストレーション・サービス BizTalkメッセージング・サービス |
|
SQL Server
2000 FOR XML句 XMLビュー URLクエリ OpenXML |
|
Exchange、Commerce、そのほかのサーバ Exchange 2000 Server Commerce Server 2000 Host Integration Server 2000 Internet Security & Acceleration Server 2000 Application Center 2000 Windows 2000 今後どんなXML機能が追加されるか? |
|
- QAフレームワーク:仕様ガイドラインが勧告に昇格 (2005/10/21)
データベースの急速なXML対応に後押しされてか、9月に入って「XQuery」や「XPath」に関係したドラフトが一気に11本も更新された - XML勧告を記述するXMLspecとは何か (2005/10/12)
「XML 1.0勧告」はXMLspec DTDで記述され、XSLTによって生成されている。これはXMLが本当に役立っている具体的な証である - 文字符号化方式にまつわるジレンマ (2005/9/13)
文字符号化方式(UTF-8、シフトJISなど)を自動検出するには、ニワトリと卵の関係にあるジレンマを解消する仕組みが必要となる - XMLキー管理仕様(XKMS 2.0)が勧告に昇格 (2005/8/16)
セキュリティ関連のXML仕様に進展あり。また、日本発の新しいXMLソフトウェアアーキテクチャ「xfy technology」の詳細も紹介する
|
|