WAS v8.5 > WebSphere applications > Service integration > Mediations > Mediation programming

SDO data graphs

Service Data Objects (SDO) is an open standard for enabling applications to handle data from different data sources in a uniform way, as data graphs. SDO data graphs are an important concept for mediation programmers because we can use them to represent different types of message information in a standard way, giving a simple and powerful model for programming mediations.

Using SDO, the applications can uniformly access and manipulate data from diverse data sources including relational databases, XML data sources, Web services, and enterprise information systems.

SDO data graphs are structured collections of data objects. In general, data graphs generated from messages have a tree structure. A mediation retrieves a data graph from a message, transforms the data graph, and reflects the updates to the data graph in the message.

In WebSphere Application Server, data access services connect mediations to data sources, allowing mediations to manipulate an abstract representation of the message, the SIMessage. The SIMessage API provides a method, getDataGraph(), that returns the SDO data graph containing the SIMessage content in a tree representation, or graph of data objects. Each data object represents one or more fields in the message, or it points to other objects.

When a data graph is requested from a message, the appropriate data access service is identified by a format property in the SIMessage. The format string controls which data access service is used to process the message, and can contain additional control information for that data access service. The data access service controls the structure of the message. For more information about the data access services available in WAS, see Map of SDO data graphs for web services messages.

The SIMessageContext API provides access to:

Data objects hold their data as a set of named properties. Each property has a type that is either an attribute type (for example, int) or a commonly used data type (for example, Date). If the property is a reference, it has the type of another data object. The Data Object API provides a dynamic data API for manipulating these properties, with the following interfaces that relate to instance data:

SDO also contains a metadata API for examining the model of a data graph, consisting of Types and Properties:

The version of SDO data graphs used by mediations is v1. Data graphs provided by the SIMessage and SIDataGraphFactory interfaces can only be provided to other SIMessage objects. Data graphs provided to SIMessage objects can only come from other SIMessage objects or have been constructed using the SIDataGraphFactory.


+

Search Tips   |   Advanced Search