BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース SOAにおけるData Services: 課題と可能な解決策

SOAにおけるData Services: 課題と可能な解決策

ブックマーク

Data Servicesはサービス指向のアーキテクチャにおいて、それがMaster Data Management(MDM)、Customer Data Integration(CDI)用であるかもしくはコアのSalesForce.com APIであるかということに関して、次第に人々の興味をそそっている。

WSO2は去年の夏SQLデータベースからデータサービスを作るのを簡易にするため、Web Services Application Server(WSAS)の一部としてData Services Framework(サイト・英語)をリリースした。

先週David Webber氏(source)は、OASIS Content Assembly Mechanism(CAM)の仕様とそのデータサービスへの関連性に関する記事(source)を書いている。ほとんどの人がクエリの結果を検証するためにXMLスキーマの定義をあきらめている一方、CAMはXMLベースの処理用の検証データサービスの定義を可能にするテンプレートを提供する。またDaveは下記のように付け加えている。

W3C XSDスキーマ、ネームスペース、XSLTと他のツール(SchematronとXMLBeansのような)を使用している既存のテクニックはしばらくの間存在していて、それらはよりデベロッパ中心の可能性としてひ弱なデザインオプションを提供してきた。「従来のスキーマメカニズム」は必ずしもビジネスコンテキスト基準に応答する必要のあるAgile情報インターフェースにとって役立つものではない。

CAMはXML Schemaを使用する必要なしにメッセージストラクチャを定義することが可能なのである。更なるCAMプラットフォームの機能はサービスバージョニングと再利用を促進するメカニズムを供給するものである。Daveは下記のように説明している。

すでに3年以上市販されている定評あるAWSプラットフォーム(source)を研究することによっていくつか洞察が得られる。Amazonは以前からコンテンツモデルに変化を起こしてきたが、その結果として数年前からバージョンリクエストをサポートしている。AmazonはリクエストのバージョンIDがリクエストそれ自体のシンタックスに含まれている、セルフサービスのバージョニングアプローチを使用している。

その問題はAmazonが売っている製品によって幅広い領域で折り合わされてきた。

それぞれの製品が異なるインフォメーションモデルを所有しています(ダイアグラムで参照されています)。ある製品系列コード用のクエリは変化するパーツを伴って、XMLのかたまりを返還します。これらいくつかのストラクチャニュアンスは異なるストラクチャブロックに現れるXMLエレメントタグと分化関連した要素を伴って不可欠なものとなります。それだけではなく、Amazon.comそれ自体とそのサプライアのランキングに加え、それぞれのアイテムに値段、在庫レベル、新品、中古品のアイテムのダウンストリームのサプライヤに関する情報を所有しているのです。

Daveの記事はAmazonのサービス用コンテキストドライバの解析もフィーチャーしており、同氏は下記のように結論を下している。

明らかにW3Cスキーマとネームスペースメカニズムに注目すると、コンテキスチュアルビヘイビアがサポートされているものはありません。わかるのは起こりえる全体的なストラクチャのレイアウトのみです。

Daveは次に柔軟でコンテキスト依存のドキュメントストラクチャを解説するために、XPathステートメント一式を使用しているCAMについて説明した。 CAMはUN/CEFACT Core Component Technical Specification(source)と同じところから由来しているのだが、CCTSとは異なりCAMは今日作動可能である。CAMのjCAM Javaオープンソース実装(source)はWebサービス、B2Bと独立型のローカルモードを含むSOAに関連した典型的な相互作用のための3つの別々のデプロイメントモードを提供します。EclipseエディタはSOA実装のサポートとともにCAMテンプレートのローカルでのスタンドアローンでの使用を可能にする。

原文はこちらです:http://www.infoq.com/news/2007/11/data-services-in-soa

この記事に星をつける

おすすめ度
スタイル

BT