Supported (EMF) Features
- Supported EMF Features
- Supported XML Schema structures
- EJB3/JPA Annotations
- Hibernate Features
- Not (yet) Supported EMF Features
The EMF - Hibernate Integration supports a number of important EMF features and features offered by Hibernate.
Supported EMF Features
- Many relevant primitive types (including Date)
- Lists of primitive types (EDataTypeEList)
- Single Reference: contained, non-contained, one-way, two-way
- One-To-Many relations (EList): contained, non-contained, one-way, two-way
- Feature maps
- EMap (only eager loading)
- Notifications and adapters (limited testing done)
- Enumerations
- Resource implementation
- Lazy loading (similar to EMF proxy feature)
- Inheritance between types (limited testing done)
- No dependencies on EObjectImpl as root object or specific root object for persistency: EMF Objects are only required to implement org.eclipse.emf.ecore.InternalEObject
Supported XML Schema structures
EMF allows models to be expressed in XML Schema. Through EMF the current solution supports many XML Schema structures, an overview:
- Element definition with all combinations of minOccurs and maxOccurs
- Repeating model group such as xsd:choice with maxOccurs="unbounded"
- all relevant simple types including xsd:IDREF, xsd:IDREFS and xsd:anyURI
- etc.
For a detailed listing of XML Schema support see here.
EJB3/JPA Annotations
The integration supports the following EJB3-like annotations:
- UniqueConstraints
- MappedSuperclass
- IdClass
- OneToMany, ManyToMany, ManyToOne
- etc.
For a detailed listing of EJB3 annotation support see here.
Hibernate Features
The integration supports Hibernate features such as:
- OR Mapping of class hierarchies, 1:n, m:n relations (one- and twoway)
- Support for many relational databases
- HQL query language
- 2 level caching
- etc.
Not (yet) Supported EMF Features
The following EMF features are (currently) not supported or have not been tested to ensure that they are supported:
- XML Schema constructions such as xsd:any, xsd:anytype etc.
- xsd:union