Skip to main content
Jump to: navigation, search

Difference between revisions of "EclipseLink/UserGuide/SDO/Introduction to EclipseLink SDO (ELUG)"

m
m
Line 37: Line 37:
  
 
===Defining Metadata===
 
===Defining Metadata===
 +
You can use the following EclipseLink helper classes to define SDO metadata (information pending: document how the underlying EclipseLink metadata can be accessed and modified).
  
  
====How to Use XSDHelper====
+
====How to Define Metadata with EclipseLink XSDHelper====
 +
You use the <code>XSDHelper</code> to do the following:
 +
* define SDO metadata, where SDO metadata is derived from XML schemas;
 +
* generate XML schemas from SDO types.
  
 +
You can customize metadata using the following annotations that you apply to the XML schema:
 +
* standard annotations (information pending: list them);
 +
* EclipseLink annotations.
  
====How to Use TypeHelper====
+
You can also use various APIs to determine the XML representation about the SDO metadata.
 +
 
 +
 
 +
====How to Define Metadata with EclipseLink TypeHelper====
 +
This helper provides a programmatic means to define SDO metadata.
 +
While this helper is not generally used to define metadata, it is the primary place for looking up SDO metadata.
  
  

Revision as of 09:20, 23 April 2009

Information pending

This section introduces EclipseLink implementation of Service Data Objects (SDO) specification, as well as provides information on how you can use it in your application development.


Using SDO Metadata

SDO metadata is represented as Type and Property objects. You define the metadata at run time either programmatically, or from an XML schema.


Using Type

SDO Type acts similarly to a Class in Java, and provides much of the same metadata as the Java Reflection API provides for Java classes.

In EclipseLink, a Type wraps an object-XML mapping (OXM) descriptor.

Types can have supertypes, which corresponds to the EclipseLink concept of an inheritance policy (see ...).


What You May Need to Know About Open Sequenced Type

...

What You May Need to Know About DataObject Types for Data Types

...


Using Property

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.

In EclipseLink, a Property wraps an object-XML mapping in the following way:

  • DataType=true + isMany=false (see OXM Direct Mapping (or an OXM Binary Mapping))
  • DataType=true + isMany=true (see OXM Direct Collection Mapping (or an OXM Binary Collection Mapping))
  • DataType=false + isMany=false + containment=true (see OXM Composite Object Mapping)
  • DataType=false + isMany=true + containment=true (see OXM Composite Collection Mapping)
  • DataType=false + isMany=false + containment=false (see OXM Reference Mapping)
  • DataType=false + isMany=true + containment=false (see OXM Collection Reference Mapping)


Defining Metadata

You can use the following EclipseLink helper classes to define SDO metadata (information pending: document how the underlying EclipseLink metadata can be accessed and modified).


How to Define Metadata with EclipseLink XSDHelper

You use the XSDHelper to do the following:

  • define SDO metadata, where SDO metadata is derived from XML schemas;
  • generate XML schemas from SDO types.

You can customize metadata using the following annotations that you apply to the XML schema:

  • standard annotations (information pending: list them);
  • EclipseLink annotations.

You can also use various APIs to determine the XML representation about the SDO metadata.


How to Define Metadata with EclipseLink TypeHelper

This helper provides a programmatic means to define SDO metadata. While this helper is not generally used to define metadata, it is the primary place for looking up SDO metadata.


Using Data

Using DataObject (see 17.2.6 “Mapping converters and transformers” in JITDG/ELUG)

What You May Need to Know About Serialization in SDO (see 17.2.6.1 in JITDG/ELUG)

Using XMLDocument

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

Copyright © Eclipse Foundation, Inc. All Rights Reserved.