Download | Blog | Forums | Support | Contact us | Search  
Xcalia delivers Data Integration Software for SOA compliant data architecture data access software

 

Service Data Objects: Simplifying the Programming Model for Data Access

Service Data Objects (SDO) is designed to simplify and unify the way in which applications handle data. Using SDO, application programmers can uniformly access and manipulate data from heterogeneous data sources, including relational databases, XML data sources, Web services, and enterprise information systems. For more information about the goals and architecture of SDO, see the whitepaper "Service Data Objects White Paper" prepared by OSOA.

The SDO initiative is led since April 2007 by OpenCSA, a Member Section within the OASIS standard organization. The SDO specification was initiated in 2004 as a joint collaboration between BEA and IBM as well as Xcalia. Xcalia has been involved in its elaboration since the early days, and joined OASIS to further support and participate to this key standard for SOA application development.

SDO Concepts

SDO is based on the concept of disconnected data graphs. A data graph is a collection of tree-structured or graph-structured data objects. Under the disconnected data graphs architecture, a client retrieves a data graph from a data source, mutates the data graph, and can then apply the data graph changes back to the data source.

The task of connecting applications to data sources is performed by data mediator services. Client applications query a data mediator service and get a data graph in response. Client applications send an updated data graph to a data mediator service to have the updates applied to the original data source. This architecture allows applications to deal principally with data graphs and data objects.

SDO Features

SDO enables both a static (or strongly typed) programming model and a dynamic (or loosely typed) programming model. This enables a simple programming model without sacrificing the dynamic model needed by tools and frameworks.

SDO also provides a metadata API, which allows applications, tools, and frameworks to introspect the data model for a data graph. The SDO metadata API unifies data-source-specific metadata APIs to enable applications to handle data from heterogeneous data sources in a uniform way.

SDO is intended to be language neutral and to be available in a range of programming languages.

See also our article about Transparent Data Access.

SDO 2.0 & 2.01

In June 2005, an updated and extended version of the Java SDO Specification was made available - Version 2.0.  The Java SDO Specification is now complemented with the C++ SDO Specification.  Both are published at the Version 2.01 level.  This represents only minor editorial changes for the Java specification, but it is the first public version of the SDO specification.

SDO 2.0 has been approved by the Java Community Process as JSR 243.

Download the Service Data Objects Version 2.01 Specification

You can download the complete Service Data Objects Version 2.01 specification, the Javadoc files, and the Interface Source files by clicking on the following links:

Description Date Access Method
Service Data Objects for Java 2.01 specification (PDF) Nov 2005 Download via HTTP
Service Data Objects for C++ 2.01 specification (PDF) Nov 2005 Download via HTTP
SDO 2.01 C++ interface source filesNov 2005 Download via HTTP
SDO 2.01 Javadoc files Nov 2005 Download via HTTP; Browse online...
SDO 2.01 Java interface source files Nov 2005 Download via HTTP

Also, read "Next-Generation Data Programming: Service Data Objects," a whitepaper which provides additional information on the Service Data Objects API.

Xcalia recognizes SDO as yet another choice for data handling in the Java community, and the Xcalia Intermediation Core™ is an SDO 2.01 compliant implementation.

Feedback

Your feedback to this specification is welcome and encouraged; please provide it here.

The Open SOA collaboration is keen to receive your views and your feedback on the SDO specifications.  The SDO Specifications are published under a Royalty-Free license, which enables the specifications to be used freely for the creation of compatible implementations.  In order for the Open SOA collaboration to ensure that the SDO Specifications continue to be published using this liberal form of license, we need to take care that any feedback given to us does not compromise the Royalty Free status of the specifications. If you prefer, however, you may request a license.

SDO 2.1 Specification

In November 2006, Open SOA published the SDO 2.1 specification. It is now going through the OASIS standardization process to become an Open Standard.

Learn more about what's new in the SDO 2.1 specification.

Xcalia is a major SOA vendor addressing enterprise IT and business requirements regarding business oriented enterprise data access,