Service Data Objects

Service Data Objects(サービスデータオブジェクト、SDO)とは、様々なデータを統一的にアクセスできるようにする技術である。2004年、BEAシステムズIBMが共同で開発し、Java Community Process が承認した。2005年11月、Service Component Architectureの一部としてバージョン2.0が登場した。

他の技術との関連

当初 Web Data Objects(ウェブデータオブジェクト、WDO)と呼ばれ、IBM WebSphere Application Server 5.1 と IBM WebSphere Studio Application Server 5.1.2 の一部としてリリースされた[1]。他の類似の技術としては、JDO, EMF, JAXB, ADO.NET がある。

設計

Service Data Objects は言語に依存しないデータ構造を利用し、各種サービス提供実体間の通信を可能にする。木構造とその上での走査(幅優先/深さ優先)方法を提供し、クライアントプログラムが要素を操作できるようにする。オブジェクトは静的(フィールド数固定)でも、無制限のフィールドを持てる動的な構造でもよい。仕様では、全フィールドにメタデータが定義され、オブジェクトのグラフについて変更サマリーを提供することで、プログラムがデータをより効率的に扱えるようにする。

開発元

2007年4月以降、仕様はOASISの Open CSA[2]が策定しており、BEAシステムズ・IBM・Rouge Wave・オラクル・SAP・Siebel・Sybase・Xcalia・Software AGとサン・マイクロシステムズが参加している。それ以前からある非公式な協業組織 Open SOA[3] もこれに協力している。

実装

  • Rogue Wave Software (HydraSDO)
  • CodeFutures Software (FireStorm/SDO)
  • Xcalia (Java および .Net)
  • BEA (AquaLogic Data Services Platform)
  • IBM (Virtual XML Garden)
  • IBM (WebSphere Process Server)

オープンソース実装としては、以下のものがある。

  • Apache Tuscany(Java および C++)
  • SOA PHP

出典

[脚注の使い方]
  1. ^ Introduction to Service Data Objects
  2. ^ OASIS Open CSA
  3. ^ Open SOA

外部リンク

  • OASIS Open CSA SDOの公式サイト
  • Service Data Objects
  • SDO Specifications at OpenSOA
  • Introduction to Service Data Objects
  • Introducing Service Data Objects for PHP
  • Service Data Objects Tutorial