A Service Data Objects egy technológia amely lehetővé teszi, hogy heterogén adatokhoz egységes módon férjünk hozzá. Az SDO specifikáció eredetileg 2004-ben a BEA és az IBM közös munkájával és a Java Community Process jóváhagyásával készült el. A specifikáció 2.0-s verziója 2005 novemberében került bemutatásra a Service Component Architecture kulcs részeként.
Eredetileg ezt a technológia Web Data Objects-ként, vagy WDO-ként volt ismert, és a IBM WebSphere Application Server 5.1 és IBM WebSphere Studio Application Developer 5.1.2. részeként szállították Más hasonló technológiák a JDO, EMF, JAXB és az ADO.NET.
A Service Data Object-ek a nyelvfüggetlen adatstruktúrák használatát fejezik ki, amelyek megkönnyítik a strukturális szintek és a különféle szolgáltatásokat nyújtó entitások közötti kommunikációt. Használatuk megköveteli a fa struktúra használatát melynek egy gyökér eleme van, és bejárási mechanizmusokat (szélesség/mélység) adnak amelyekkel a kliensek navigálhatnak az elemeken. Az objektumok lehet statikusak (fix számú mező) vagy dinamikusak egy asszociatív tömbszerű struktúrával amely végtelen számú mező használatát teszi lehetővé. A specifikáció minden mezőhöz meghatároz egy metaadatot és mindegyik objektumgráfot le lehet írni a változtatások összefoglalásával, így a fogadó program hatékonyabban dolgozhatja fel őket.
A specifikációt jelenleg BEA, IBM, Rogue Wave, Oracle, SAP, Siebel, Sybase, Xcalia, Software AG, Sun Microsystems fejlesztik az OASIS Member Section Open CSA keretein belül 2007 áprilisa óta. Az együttes munka és anyagok az Open SOA együttműködési platformon maradt, ami az ipari szereplők egy csoportja.
A következő SDO termékek érhetők el a jelenleg a piacon:
Nyílt forráskódú megvalósítások is elérhetőek:
A specifikáció verziói és története az alábbi linkeken található