Java SDO extensions
- Last Updated: February 11, 2026
- 2 minute read
- OpenEdge
- Version 13.0
- Documentation
While Java SDO closely models the capabilities of the ABL ProDataSet, the
ProDataGraph extensions provide additional support to address the following
Java SDO limitations:
- Java SDO provides a minimal meta data API that allows clients to introspect data in a
DataGraph. However, to more easily define and access the meta data of aProDataGraph, OpenEdge provides its own classes,ProDataGraphMetaDataandProDataObjectMetaData, to store the schema for aProDataGraph. - Java SDO provides relationship support by allowing a
DataObject(table row) to contain references to otherDataObjectinstances (representing rows in another table). However, it provides no means to describe these relationships as provided for ProDataSets. There is no meta data that describes the field names in the parent and child tables that form the primary-foreign key relationships. OpenEdge provides its ownProDataRelationMetaDataclass to describe each entity relation (data-relation) in aProDataGraph. - Java SDO does not support the
java.util.GregorianCalendarclass as a data type forDataObjectcolumn properties. This data type is essential to map ProDataSet fields that have theDATETIMEorDATETIME-TZdata type. The OpenEdgeProDataObjectclass supports thejava.util.GregorianCalendarclass as a data type forProDataObjectcolumn properties (fields).Note: Java SDO supports thejava.util.Dateclass, but many of its methods are deprecated as of JDK 1.1 because they are not suitable for internationalization. - The Java SDO
ChangeSummaryobject that tracks changes to anyDataObjectrows in aDataGraphreturns these changes as a list ofDataObjectrows. However, to efficiently marshall these updates back to the application server, these changed rows must be returned to the application server as a changes-onlyProDataGraph, which maps to a changes-only ProDataSet in the application service. The OpenEdgeProChangeSummaryclass tracks allProDataObjectchanges and returns them in a changes-onlyProDataGraph.
The following table summarizes all the OpenEdge classes that support the
ProDataGraph extension to Java SDO. They all reside in the
com.progress.open4gl package. For more information on how these objects
work together, in a typical ProDataGraph, see ProDataGraph object model.
| OpenEdge class | Basis | For more information, see . . . |
|---|---|---|
ProDataGraph
|
Extends DataGraph to map ProDataSets |
ProDataGraph class |
ProDataObject
|
Extends DataObject to support
java.util.GregorianCalendar and provide relational navigation among
tables |
ProDataObject class |
ProChangeSummary
|
Extends ChangeSummary to return all
ProDataObject changes in a changes-only
ProDataGraph |
ProChangeSummary class |
ProDataGraphMetaData
|
OpenEdge-based class to more easily manage
ProDataGraph schema information |
ProDataGraphMetaData class |
ProDataObjectMetaData
|
OpenEdge-based class to more easily manage
ProDataObject schema information |
ProDataObjectMetaData class |
ProDataRelationMetaData
|
OpenEdge-based class to describe ProDataGraph
data-relations |
ProDataRelationMetaData class |