Service Data Objects (SDO) is the name of a specification designed to streamline the processing of SOA (service-oriented architecture) data from diverse sources such as XML documents, relational databases and Web Services. SDO can be used with static or dynamic interfaces, making it convenient for application programmers.
Key features of SDO include separation of data access code from application code, implementation of customized data access layers and support for disconnected programming models. SDO organizes data as graphs containing units called objects that can be easily updated, allowing constant and reliable access to data from all sources.
SDO began as a joint collaboration between IBM (International Business Machines) and BEA Systems, Inc. and was published officially as a specification in November 2004. Later, SDO was included as part of the SCA (service-component architecture). SDO is evolving as an increasing number of key industry players contribute to the development of new versions.