What You May Need to Know About Sequenced Types

You can define SDO types as sequenced (that is, isSequenced is true). With sequenced DataObjects you can have fine grained control over how the properties are ordered when they are saved to XML. For more information see Sequence.

What You May Need to Know About Open Types

You can define SDO types as open (that is, isOpen is true). Open DataObjects will accept additional properties (the ones not specified by their Type).

Using Property

A DataObject is made up of Property values. SDO Property acts similarly to a property in Java and provides much of the same metadata as the Java Reflection API provides for Java fields or methods.

What You May Need to Know About Serialization in SDO

SDO DataObjects are serializable. When a DataObject is serialized, the entire data graph is serialized with it. On the stream SDO DataObjects are represented in a specification defined XML representation.

Using XMLDocument

When you marshall (save) a DataObject to XML, or unmarshall an XML document into objects, the XMLDocument class contains information about the root of the XML document.

The XMLHelper creates and serializes XMLDocument objects. The XMLDocument does not change the state of any input DataObject and ignores any containers.

What You May Need to Know About Sequence, ChangeSummary, and DataGraph

The following SDO classes allow you to obtain additional information about data objects:

Sequence -- provides a list of properties and their corresponding values. It represents the order of all the XML elements in the DataObject. Each entry in a Sequence has an index, with the order of settings being preserved, even across different properties. The same properties that appear in a Sequence are also available through a DataObject, but without preserving the order across properties.You should use sequences when dealing with semi-structured business data, for example, mixed text XML elements.

ChangeSummary -- records changes to data objects, therefore reducing the amount of data that needs to be transmitted between collaborating SDO applications.The ChangeSummary only tracks modifications that have been made to a tree of data objects starting from the point when logging was activated. If logging is no longer active, the log includes only changes that were made up to the point when logging was deactivated. Otherwise, it includes all changes up to the point at which the ChangeSummary is being interrogated. Although change information is only gathered when logging is on, you can query change information whether logging is on or off. All of the information returned is read-only. Use the ChangeSummary's beginLogging method to clear the List of changed DataObjects and start change logging; use the endLogging method to stop change logging; use undoChanges to restore the tree of data objects to its state when logging began. Note that undoChanges also clears the log, but does not affect isLogging.