Service Data Object (SDO)

- JavaTouch

- Eclipse

Apache Tuscany project

Apache Tuscany is based on independent technologies that together provide following:

  • Service Component Architecture (SCA) enables composition of service networks through assembly of existing and new services. As an example, a service can be implemented as JAX-WS service, Spring Bean or EJB and exposed as a web service.
  • Tuscany SCA allows services to be implemented in variety of languages such as Java, JavaScript and C++. Tuscany SCA runtime is implemented in Java and C++ and can easily be extended to support any communication transport, qualities of service or programming model and can be used in conjunction with other technologies such as Spring, Axis and Celtix.
  • Service Data Object (SDO) provides a uniform interface for handling different forms of data, including XML documents, that can exist in a network of services and provides the mechanism for tracking changes. Apache Tuscany provides Java and C++ implementations for SDO.
  • Data Access Service (DAS) provides a simple SDO interface to relational databases. Apache Tuscany provides a Java implementation for DAS.

SCA and SDO technologies can be used independent of one another. The specifications for these technologies are located at . Apache Tuscany project provides input to the specifications.

Service Data Objects (SDO) is a framework that simplifies and unifies data application development in a service oriented architecture (SOA). It supports and integrates XML and incorporates J2EE patterns and best practices.
Unlike some of the other data integration models, Service Data Objects don't stop at data abstraction. The Service Data Objects framework also incorporates a good number of J2EE patterns and best practices. SDO supports a disconnected programming model. The SDO programming model prescribes patterns of usage that allow clean separation of each of these concerns.
Put simply, Service Data Objects is a framework for data application development, which includes an architecture and API. Service Data Objects simplify the J2EE data programming model and abstract data in a service oriented architecture (SOA). SDO unifies data application development, supports, and integrates XML. Service Data Objects incorporate J2EE patterns and best practices.

Programme Model Today:

Programme Model Tommorow:

Picures Ref :

- SDO Home at Eclipse
- SDO Documantation Home at Eclipse
- SDO API Doc (ver 2.2.1)
- SDO and EMF JavaDoc Home
- SDO and EMF Download Home 


Tutorials and Articals

- Introduction to Service Data Objects (Sep 2004, IBM)
- An Introduction to Service Data Objects (Oct 2004, Java-sys-con)
   Integrating relational data into Web applications
- SDO Presentation Slides (Oct 2005, Andre Tost @ IBM, pdf)


SDO Reference

- SDO Specification (Version 1.0) (Nov 2003, IBM/BEA. pdf)
- SDO Specification (Version 2.0) (Jun 2005, IBM/BEA. pdf)

SDO Usage

- Using Service Data Objects with Enterprise Information Integration technology (2004, IBM)
   Combining Enterprise Information Integration (EII) technology with Service Data Objects (SDO) helps object-oriented programmers easily work with a wide variety of heterogeneous data sources and reduces the complexity of integrating disparate data. In this article, explain why, describe a sample architecture, and provide coding examples based on early SDO support in IBM® WebSphere® Studio and EII support in WebSphere® Information Integrator.