Service Data Objects is a technology that allows heterogeneous data to be accessed in a uniform way. The SDO specification was originally developed in 2004 as a joint collaboration between Oracle (BEA) and IBM and approved by the Java Community Process in JSR 235. Version 2.0 of the specification was introduced in November 2005 as a key part of the Service Component Architecture. Relation to other technologies Originally, the technology was known as Web Data Objects, or WDO, and was shipped in IBM WebSphere Application Server 5.1 and IBM WebSphere Studio Application Developer 5.1.2. Other similar technologies are JDO, EMF, JAXB and ADO.NET. Design Service Data Objects denote the use of language-agnostic data structures that facilitate communication between structural tiers and various service-providing entities. They require the use of a tree structure with a root node and provide traversal mechanisms (breadth/depth-first) that allow client programs to navigate the elements. Objects can be static (fixed number of fields) or dynamic with a map-like structure allowing for unlimited fields. The specification defines meta-data for all fields and each object graph can also be provided with change summaries that can allow receiving programs to act more efficiently on them. Developers The specification is now being developed by IBM, Rogue Wave, Oracle, SAP, Siebel, Sybase, Xcalia, Software AG within the OASIS Member Section Open CSA since April 2007. Collaborative work and materials remain on the collaboration platform of Open SOA, an informal group of actors of the industry. Implementations The following SDO products are available: Rogue Wave Software HydraSDO Xcalia (for Java and .Net) Oracle (Data Service Integrator) IBM (Virtual XML Garden) IBM (WebSphere Process Server) There are open source implementations of SDO from: The Eclipse Persistence Services Project (EclipseLink) The Apache Tuscany project for Java and C++ The fcl-sdo library included with FreePascal References External links Specification versions and history can be found on Latest materials at OASIS Open CSA Service Data Objects SDO Specifications at OpenSOA Introducing Service Data Objects for PHP Using PHP's SDO and SCA extensions Computer networking Java specification requests Persistence Service-oriented (business computing)