aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Taal2012-11-16 14:18:26 (EST)
committerMartin Taal2012-11-16 14:18:26 (EST)
commitc2589b7076d2e1cabd099fd2883bdb5416d22f01 (patch)
tree17885e04b7a9dd343a025ccf81d36076e5de6d54
parent36329b3c745d0d8ef229ac95ee85ae4cf906c73c (diff)
downloadorg.eclipse.emf.teneo-c2589b7076d2e1cabd099fd2883bdb5416d22f01.zip
org.eclipse.emf.teneo-c2589b7076d2e1cabd099fd2883bdb5416d22f01.tar.gz
org.eclipse.emf.teneo-c2589b7076d2e1cabd099fd2883bdb5416d22f01.tar.bz2
Latest audit changes, let LOB annotation also work for maxoccurs is unbounded
-rwxr-xr-xcore/org.eclipse.emf.teneo/src/org/eclipse/emf/teneo/annotations/mapper/EFeatureAnnotator.java23
-rw-r--r--hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditHandler.java68
-rwxr-xr-xhibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditProcessHandler.java63
-rw-r--r--hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditVersionProvider.java52
-rwxr-xr-xtests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/annotations/LobAction.java17
-rwxr-xr-xtests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/annotations/LobAction.persistence.xml21
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.annotations/EMapEAVAction_hsqldb_e_o_hibernate.hbm.xml148
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.elist/FeatureMapEAVAction_hsqldb_e_o_hibernate.hbm.xml250
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.elist/FeatureMapEAVAction_hsqldb_h_o_hibernate.hbm.xml262
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVAction_hsqldb_e_o_hibernate.hbm.xml384
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVAction_hsqldb_h_o_hibernate.hbm.xml402
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVNoDBSchemaAction_hsqldb_e_o_hibernate.hbm.xml69
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/FleetEAVAction_hsqldb_e_o_hibernate.hbm.xml1211
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_hsqldb_e_o_hibernate.hbm.xml176
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_hsqldb_h_o_hibernate.hbm.xml185
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_hsqldb_e_o_hibernate.hbm.xml176
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_hsqldb_h_o_hibernate.hbm.xml185
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVResourceAction_hsqldb_e_o_hibernate.hbm.xml176
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVResourceAction_hsqldb_h_o_hibernate.hbm.xml185
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/ProductEAVTest_hsqldb_e_o_hibernate.hbm.xml163
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/AttributesEAVAction$1_hsqldb_e_o_hibernate.hbm.xml173
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/AttributesEAVAction$1_hsqldb_h_o_hibernate.hbm.xml179
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DateTimeEAVAction_hsqldb_e_o_hibernate.hbm.xml115
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DateTimeEAVAction_hsqldb_h_o_hibernate.hbm.xml118
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DocumentRootEAVAction_hsqldb_e_o_hibernate.hbm.xml115
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListEAVAction_hsqldb_e_o_hibernate.hbm.xml321
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListEAVAction_hsqldb_h_o_hibernate.hbm.xml339
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListExtraLazyEAVAction_hsqldb_e_o_hibernate.hbm.xml321
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListExtraLazyEAVAction_hsqldb_h_o_hibernate.hbm.xml339
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EcoreAttrsEAVAction_hsqldb_e_o_hibernate.hbm.xml250
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/ExtensionEAVAction_hsqldb_e_o_hibernate.hbm.xml389
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/GroupEAVAction_hsqldb_e_o_hibernate.hbm.xml380
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/ListEAVAction_hsqldb_e_o_hibernate.hbm.xml55
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/MixedEAVAction_hsqldb_e_o_hibernate.hbm.xml204
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/NestedGroupEAVAction_hsqldb_e_o_hibernate.hbm.xml210
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimpleTypeEAVAction_hsqldb_e_o_hibernate.hbm.xml310
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimpleTypeEAVAction_hsqldb_h_o_hibernate.hbm.xml319
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimplefeaturemapEAVAction_hsqldb_e_o_hibernate.hbm.xml121
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SubstitutionEAVAction_hsqldb_e_o_hibernate.hbm.xml404
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SubstitutionzvonEAVAction_hsqldb_e_o_hibernate.hbm.xml320
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_e_o_hibernate.hbm.xml24
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_h_o_hibernate.hbm.xml24
-rw-r--r--tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_x_o_hibernate.hbm.xml26
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/AllTests.java1
-rwxr-xr-xtests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/LobPackage.java30
-rwxr-xr-xtests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/Person.java32
-rwxr-xr-xtests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/impl/LobPackageImpl.java83
-rwxr-xr-xtests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/impl/PersonImpl.java46
-rwxr-xr-xtests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/model/lob.ecore37
-rwxr-xr-xtests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/model/lob.genmodel9
-rwxr-xr-xtests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/model/lob.xsd19
-rwxr-xr-xtests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/util/LobAdapterFactory.java2
-rwxr-xr-xtests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/util/LobSwitch.java44
53 files changed, 9423 insertions, 152 deletions
diff --git a/core/org.eclipse.emf.teneo/src/org/eclipse/emf/teneo/annotations/mapper/EFeatureAnnotator.java b/core/org.eclipse.emf.teneo/src/org/eclipse/emf/teneo/annotations/mapper/EFeatureAnnotator.java
index 7b090e0..5755eed 100755
--- a/core/org.eclipse.emf.teneo/src/org/eclipse/emf/teneo/annotations/mapper/EFeatureAnnotator.java
+++ b/core/org.eclipse.emf.teneo/src/org/eclipse/emf/teneo/annotations/mapper/EFeatureAnnotator.java
@@ -151,18 +151,21 @@ public class EFeatureAnnotator extends AbstractAnnotator implements ExtensionPoi
final Class<?> instanceClass = eStructuralFeature.getEType().getInstanceClass();
boolean isMany = false;
// instanceClass will be null for enums
- // Lob-annotated attributes must not be treated as one-to-many.
// eattributes with a hibernate type annotations should not be
// treated as a list
- if (instanceClass != null && aAttribute.getLob() == null) {
- isMany = eStructuralFeature.isMany() || instanceClass.isArray()
- || Collection.class.isAssignableFrom(instanceClass)
- || Set.class.isAssignableFrom(instanceClass)
- || List.class.isAssignableFrom(instanceClass);
- // note this causes a featuremap within a featuremap to get
- // the
- // basic annotation!
- isMany = isMany && !StoreUtil.isElementOfAGroup(eStructuralFeature);
+ if (instanceClass != null) {
+ if (aAttribute.getLob() != null && instanceClass.isArray()) {
+ // special case, don't treat as isMany
+ isMany = false;
+ } else {
+ isMany = eStructuralFeature.isMany() || instanceClass.isArray()
+ || Collection.class.isAssignableFrom(instanceClass)
+ || Set.class.isAssignableFrom(instanceClass)
+ || List.class.isAssignableFrom(instanceClass);
+ // note this causes a featuremap within a featuremap to get
+ // the basic annotation!
+ isMany = isMany && !StoreUtil.isElementOfAGroup(eStructuralFeature);
+ }
}
if (isMany) {
diff --git a/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditHandler.java b/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditHandler.java
index bb925d5..36f7965 100644
--- a/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditHandler.java
+++ b/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditHandler.java
@@ -21,6 +21,7 @@ import java.lang.reflect.Constructor;
import java.util.Collection;
import java.util.concurrent.ConcurrentHashMap;
+import org.eclipse.emf.common.util.Enumerator;
import org.eclipse.emf.ecore.EAnnotation;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
@@ -34,6 +35,7 @@ import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.EcoreFactory;
import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.util.ExtendedMetaData;
import org.eclipse.emf.ecore.util.FeatureMap;
@@ -64,13 +66,43 @@ public class AuditHandler implements ExtensionPoint {
private AuditDataStore dataStore;
+ public void setContainerInfo(Session session, TeneoAuditEntry teneoAuditEntry, Object object) {
+ final EObject eObject = (EObject) object;
+ if (null != eObject.eContainer()) {
+ teneoAuditEntry.setTeneo_container_id(entityToIdString(session, eObject.eContainer()));
+ teneoAuditEntry.setTeneo_container_feature_id(((InternalEObject) eObject)
+ .eContainerFeatureID());
+ }
+ }
+
+ /**
+ * Is the entity audited, should audit entries be created for it.
+ */
+ public boolean isAudited(Object entity) {
+ if (!(entity instanceof EObject)) {
+ // TODO: support featuremap entries
+ return false;
+ }
+ if (!dataStore.isAuditing()) {
+ return false;
+ }
+ final EObject eObject = (EObject) entity;
+ final EClass auditEClass = getAuditingModelElement(eObject.eClass());
+ return auditEClass != null;
+ }
+
+ public EClass getEClass(Object o) {
+ return ((EObject) o).eClass();
+ }
+
/**
* Copy the content from the source to the target, the copy action will translate all
* {@link EReference} values to a String containing the id.
*/
@SuppressWarnings("unchecked")
- public void copyContentToAuditEntry(Session session, EObject source, TeneoAuditEntry auditEntry,
+ public void copyContentToAuditEntry(Session session, Object object, TeneoAuditEntry auditEntry,
boolean copyCollections) {
+ final EObject source = (EObject) object;
final EClass sourceEClass = source.eClass();
final EClass targetEClass = auditEntry.eClass();
for (EStructuralFeature targetEFeature : targetEClass.getEAllStructuralFeatures()) {
@@ -177,6 +209,24 @@ public class AuditHandler implements ExtensionPoint {
return value;
}
+ if (eFeature.getEType() instanceof EEnum && value instanceof Integer) {
+ final int ordinal = (Integer) value;
+ final EEnum eeNum = (EEnum)eFeature.getEType();
+ if (eeNum.getInstanceClass() != null && eeNum.getInstanceClass().isEnum()) {
+ final Object[] constants = eeNum.getInstanceClass().getEnumConstants();
+ for (Object constant : constants) {
+ if (constant instanceof Enumerator) {
+ final Enumerator enumerator = (Enumerator) constant;
+ if (enumerator.getValue() == ordinal) {
+ return enumerator;
+ }
+ }
+ }
+ return constants[ordinal];
+ }
+ return eeNum.getEEnumLiteral((Integer)value);
+ }
+
if (eFeature instanceof EReference && ((EReference) eFeature).isContainment()) {
return EcoreUtil.copy((EObject) value);
}
@@ -480,7 +530,19 @@ public class AuditHandler implements ExtensionPoint {
*/
public EPackage createAuditingEPackage(AuditDataStore dataStore, EPackage sourceEPackage,
EPackage.Registry registry, PersistenceOptions po) {
- final EPackage eAuditingPackage = EcoreFactory.eINSTANCE.createEPackage();
+ final EPackage eAuditingPackage;
+ if (registry.containsKey(sourceEPackage.getNsURI() + "Auditing")) {
+ eAuditingPackage = registry.getEPackage(sourceEPackage.getNsURI() + "Auditing");
+ } else {
+ eAuditingPackage = EcoreFactory.eINSTANCE.createEPackage();
+ }
+
+ if (eAuditingPackage.getEAnnotation(Constants.ANNOTATION_SOURCE_AUDITING) == null) {
+ final EAnnotation eAnnotation = EcoreFactory.eINSTANCE.createEAnnotation();
+ eAnnotation.setSource(Constants.ANNOTATION_SOURCE_AUDITING);
+ eAuditingPackage.getEAnnotations().add(eAnnotation);
+ }
+
eAuditingPackage.setName(sourceEPackage.getName() + "Auditing");
eAuditingPackage.setNsPrefix(sourceEPackage.getNsPrefix() + "Auditing");
eAuditingPackage.setNsURI(sourceEPackage.getNsURI() + "Auditing");
@@ -498,6 +560,8 @@ public class AuditHandler implements ExtensionPoint {
final EClass auditingEClass;
if (eAuditingPackage.getEClassifier(auditEClassName) != null) {
auditingEClass = (EClass) eAuditingPackage.getEClassifier(auditEClassName);
+ // already done, regenerate it
+ auditingEClass.getEStructuralFeatures().clear();
} else {
auditingEClass = EcoreFactory.eINSTANCE.createEClass();
auditingEClass.setName(auditEClassName);
diff --git a/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditProcessHandler.java b/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditProcessHandler.java
index 3ebf7dc..7f8dad4 100755
--- a/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditProcessHandler.java
+++ b/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditProcessHandler.java
@@ -26,7 +26,6 @@ import org.eclipse.emf.ecore.EClassifier;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.teneo.PersistenceOptions;
import org.eclipse.emf.teneo.extension.ExtensionPoint;
import org.eclipse.emf.teneo.hibernate.HbUtil;
@@ -82,22 +81,10 @@ public class AuditProcessHandler implements AfterTransactionCompletionProcess,
private long pruneInterval = 1000;
private List<String> auditEntityNames = null;
- private boolean isAudited(Object entity) {
- if (!(entity instanceof EObject)) {
- // TODO: support featuremap entries
- return false;
- }
- if (!dataStore.isAuditing()) {
- return false;
- }
- final EObject eObject = (EObject) entity;
- final EClass auditEClass = dataStore.getAuditHandler()
- .getAuditingModelElement(eObject.eClass());
- return auditEClass != null;
- }
+ private AuditHandler auditHandler = null;
private void addToAuditWorkQueue(EventSource session, TeneoAuditKind auditKind, Object entity) {
- if (!isAudited(entity)) {
+ if (!auditHandler.isAudited(entity)) {
return;
}
@@ -211,10 +198,14 @@ public class AuditProcessHandler implements AfterTransactionCompletionProcess,
pruneEntries((SessionImplementor) session);
}
- private void doAuditWorkInSession(Session session, List<AuditWork> auditWorks) {
- final long commitTime = System.currentTimeMillis();
+ protected long getCommitTime() {
+ return System.currentTimeMillis();
+ }
- final List<EObject> toSaveEntries = new ArrayList<EObject>();
+ protected void doAuditWorkInSession(Session session, List<AuditWork> auditWorks) {
+ final long commitTime = getCommitTime();
+
+ final List<Object> toSaveEntries = new ArrayList<Object>();
final TeneoAuditCommitInfo commitInfo = TeneoauditingFactory.eINSTANCE
.createTeneoAuditCommitInfo();
@@ -226,10 +217,11 @@ public class AuditProcessHandler implements AfterTransactionCompletionProcess,
EClass lastEClass = null;
EClass auditEntryEClass = null;
for (AuditWork auditWork : auditWorks) {
- final EObject eObject = (EObject) auditWork.getEntity();
- if (lastEClass != eObject.eClass()) {
- auditEntryEClass = dataStore.getAuditHandler().getAuditingModelElement(eObject.eClass());
- lastEClass = eObject.eClass();
+ final Object object = auditWork.getEntity();
+ final EClass eClass = auditHandler.getEClass(object);
+ if (lastEClass != eClass) {
+ auditEntryEClass = auditHandler.getAuditingModelElement(eClass);
+ lastEClass = eClass;
}
final String auditEntryEntityName = HbUtil.getEntityName(auditEntryEClass);
@@ -240,19 +232,14 @@ public class AuditProcessHandler implements AfterTransactionCompletionProcess,
auditEntry.setTeneo_commit_info(commitInfo);
auditEntry.setTeneo_end(DEFAULT_END_TIMESTAMP);
auditEntry.setTeneo_start(commitTime);
- auditEntry.setTeneo_object_id(dataStore.getAuditHandler().entityToIdString(session,
- auditWork.getEntity()));
-
- if (auditWork.getEntity() instanceof EObject
- && null != ((EObject) auditWork.getEntity()).eContainer()) {
- auditEntry.setTeneo_container_id(dataStore.getAuditHandler().entityToIdString(session,
- ((EObject) auditWork.getEntity()).eContainer()));
- auditEntry.setTeneo_container_feature_id(((InternalEObject) auditWork.getEntity())
- .eContainerFeatureID());
+ auditEntry.setTeneo_object_id(auditHandler.entityToIdString(session, auditWork.getEntity()));
+
+ if (auditWork.getEntity() instanceof EObject) {
+ auditHandler.setContainerInfo(session, auditEntry, auditWork.getEntity());
}
- dataStore.getAuditHandler().copyContentToAuditEntry(session, (EObject) auditWork.getEntity(),
- auditEntry, auditWork.getAuditKind() != TeneoAuditKind.DELETE);
+ auditHandler.copyContentToAuditEntry(session, auditWork.getEntity(), auditEntry,
+ auditWork.getAuditKind() != TeneoAuditKind.DELETE);
// note also do a query in case of ADD as an object can
// be removed and then re-added, restore its link
@@ -288,8 +275,8 @@ public class AuditProcessHandler implements AfterTransactionCompletionProcess,
// the save, this to prevent unique constraint failures
session.flush();
- for (EObject o : toSaveEntries) {
- session.save(HbUtil.getEntityName(o.eClass()), o);
+ for (Object o : toSaveEntries) {
+ session.save(HbUtil.getEntityName(auditHandler.getEClass(o)), o);
}
// and flush the saved stuff
session.flush();
@@ -307,7 +294,7 @@ public class AuditProcessHandler implements AfterTransactionCompletionProcess,
// is called/used in case of emap entries which are themselves
// audit objects
- private void setCommitInfoInReferencedObjects(TeneoAuditEntry source, List<EObject> toSaveObjects) {
+ private void setCommitInfoInReferencedObjects(TeneoAuditEntry source, List<Object> toSaveObjects) {
for (EReference eReference : source.eClass().getEAllReferences()) {
if (TeneoauditingPackage.eINSTANCE.getTeneoAuditEntry().isSuperTypeOf(
eReference.getEReferenceType())) {
@@ -381,6 +368,8 @@ public class AuditProcessHandler implements AfterTransactionCompletionProcess,
PersistenceOptions.AUDITING_PRUNE_OLD_ENTRIES_DAYS));
pruneInterval = Long.parseLong(dataStore.getDataStoreProperties().getProperty(
PersistenceOptions.AUDITING_PRUNE_COMMIT_INTERVAL));
+
+ this.auditHandler = dataStore.getAuditHandler();
}
private synchronized void pruneEntries(SessionImplementor session) {
@@ -446,7 +435,7 @@ public class AuditProcessHandler implements AfterTransactionCompletionProcess,
return pruneTime;
}
- private class AuditWork {
+ protected class AuditWork {
private Object entity;
private TeneoAuditKind auditKind;
diff --git a/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditVersionProvider.java b/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditVersionProvider.java
index b8ec702..0c0562c 100644
--- a/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditVersionProvider.java
+++ b/hibernate/org.eclipse.emf.teneo.hibernate/src/org/eclipse/emf/teneo/hibernate/auditing/AuditVersionProvider.java
@@ -145,6 +145,27 @@ public class AuditVersionProvider implements ExtensionPoint {
/**
* @see AuditVersionProvider#getAllVersions(EObject)
*/
+ public List<TeneoAuditEntry> getAllAuditEntries(EClass eClass, long timeStamp) {
+ checkState();
+
+ final EClass auditingEClass = dataStore.getAuditHandler().getAuditingModelElement(eClass);
+ final String entityName = auditingEClass.getEAnnotation(Constants.ANNOTATION_SOURCE_TENEO_JPA)
+ .getDetails().get(Constants.ANNOTATION_KEY_ENTITY_NAME);
+ final Query qry = getSession().createQuery(
+ "select e from " + entityName + " e where teneo_start<=:start and (teneo_end="
+ + AuditProcessHandler.DEFAULT_END_TIMESTAMP + " or teneo_end>:end)");
+ qry.setParameter("start", timeStamp);
+ qry.setParameter("end", timeStamp);
+ final List<TeneoAuditEntry> result = new ArrayList<TeneoAuditEntry>();
+ for (Object o : qry.list()) {
+ result.add((TeneoAuditEntry) o);
+ }
+ return result;
+ }
+
+ /**
+ * @see AuditVersionProvider#getAllVersions(EObject)
+ */
public List<TeneoAuditEntry> getAllAuditEntries(EClass eClass, Object id) {
checkState();
@@ -248,21 +269,16 @@ public class AuditVersionProvider implements ExtensionPoint {
}
/**
- * Returns the actual object instance representing the state at the specified timestamp.
+ * Returns the {@link TeneoAuditEntry} representing the state at the specified timestamp.
*
* If there is no revision at that timestamp then null is returned.
*
* @see AuditVersionProvider#getRevision(TeneoAuditEntry)
*/
- @SuppressWarnings("unchecked")
- public EObject getRevision(EClass eClass, Object id, long timeStamp) {
+ public TeneoAuditEntry getAuditEntry(EClass eClass, Object id, long timeStamp) {
checkState();
final String idAsString = dataStore.getAuditHandler().idToString(eClass, id);
- final String fullId = timeStamp + AuditHandler.ID_SEPARATOR + idAsString;
- if (auditResource.getEObjectFromCache(fullId) != null) {
- return auditResource.getEObjectFromCache(fullId);
- }
final EClass auditingEClass = dataStore.getAuditHandler().getAuditingModelElement(eClass);
final String entityName = auditingEClass.getEAnnotation(Constants.ANNOTATION_SOURCE_TENEO_JPA)
.getDetails().get(Constants.ANNOTATION_KEY_ENTITY_NAME);
@@ -276,6 +292,28 @@ public class AuditVersionProvider implements ExtensionPoint {
qry.setParameter("end", timeStamp);
final TeneoAuditEntry auditEntry = (TeneoAuditEntry) qry.uniqueResult();
+ return auditEntry;
+ }
+
+ /**
+ * Returns the actual object instance representing the state at the specified timestamp.
+ *
+ * If there is no revision at that timestamp then null is returned.
+ *
+ * @see AuditVersionProvider#getRevision(TeneoAuditEntry)
+ */
+ @SuppressWarnings("unchecked")
+ public EObject getRevision(EClass eClass, Object id, long timeStamp) {
+ checkState();
+
+ final String idAsString = dataStore.getAuditHandler().idToString(eClass, id);
+ final String fullId = timeStamp + AuditHandler.ID_SEPARATOR + idAsString;
+ if (auditResource.getEObjectFromCache(fullId) != null) {
+ return auditResource.getEObjectFromCache(fullId);
+ }
+ final EClass auditingEClass = dataStore.getAuditHandler().getAuditingModelElement(eClass);
+
+ final TeneoAuditEntry auditEntry = getAuditEntry(eClass, id, timeStamp);
if (auditEntry == null) {
return null;
}
diff --git a/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/annotations/LobAction.java b/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/annotations/LobAction.java
index f97173d..e5e608d 100755
--- a/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/annotations/LobAction.java
+++ b/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/annotations/LobAction.java
@@ -35,6 +35,8 @@ public class LobAction extends AbstractTestAction {
private static final String NAME = "Jan Janssen";
private static final byte[] PHOTO = new byte[64 * 1024];
+
+ private static final byte[] bytes = new byte[10000];
static {
// Populate PHOTO with random bytes.
@@ -44,9 +46,14 @@ public class LobAction extends AbstractTestAction {
public LobAction() {
super(LobPackage.eINSTANCE);
}
-
+
@Override
public void doAction(TestStore store) {
+
+ for (int i = 0; i < 10000; i++) {
+ bytes[i] = (byte)(i % 100);
+ }
+
storePerson(store);
testPerson(store);
}
@@ -59,6 +66,10 @@ public class LobAction extends AbstractTestAction {
person.setName(NAME);
person.setAddress(ADDRESS);
person.setPhoto(PHOTO);
+
+ for (int i = 0; i < 10; i++) {
+ person.getTexts().add(new String(bytes));
+ }
store.store(person);
store.commitTransaction();
}
@@ -76,6 +87,10 @@ public class LobAction extends AbstractTestAction {
assertEquals(PHOTO[i], photo[i]);
}
+ for (int i = 0; i < 10; i++) {
+ assertEquals(person.getTexts().get(i), new String(bytes));
+ }
+
store.commitTransaction();
}
}
diff --git a/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/annotations/LobAction.persistence.xml b/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/annotations/LobAction.persistence.xml
index 733fcf7..a8d9f8a 100755
--- a/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/annotations/LobAction.persistence.xml
+++ b/tests/org.eclipse.emf.teneo.commontest/src/org/eclipse/emf/teneo/test/emf/annotations/LobAction.persistence.xml
@@ -12,6 +12,27 @@
<lob />
<column length="1000000" />
</property>
+ <eattribute name="texts">
+ <lob />
+ <column length="10000" />
+ </eattribute>
+ </eclass>
+ </epackage>
+
+ <epackage namespace-uri="http://www.eclipse.org/emf/teneo/samples/emf/annotations/lobAuditing">
+
+ <eclass name="PersonAuditing">
+ <property name="address">
+ <lob />
+ </property>
+ <property name="photo">
+ <lob />
+ <column length="1000000" />
+ </property>
+ <eattribute name="texts">
+ <lob />
+ <column length="10000" />
+ </eattribute>
</eclass>
</epackage>
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.annotations/EMapEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.annotations/EMapEAVAction_hsqldb_e_o_hibernate.hbm.xml
index 897095f..20d2b5f 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.annotations/EMapEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.annotations/EMapEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -6,4 +6,152 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.annotations.mapkey.impl.StringToWriterMapEntryImpl" entity-name="StringToWriterMapEntry" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="StringToWriterMapEntry"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.annotations.mapkey.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Writer"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="BookAuditing" abstract="false" lazy="false" table="`BOOKAUDITING`">
+ <meta attribute="eclassName" inherit="false">BookAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/annotations/mapkeyAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOKAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TITLE`"/>
+ </property>
+ <list name="writers" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_WRITERS">
+ <column name="`BOOKAUDITING_WRITERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_WRITERS_IDX`"/>
+ <one-to-many entity-name="StringToWriterMapEntryAuditing"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="StringToWriterMapEntryAuditing" abstract="false" lazy="false" table="`STRINGTOWRITERMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">StringToWriterMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/annotations/mapkeyAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="STRINGTOWRITERMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterAuditing" abstract="false" lazy="false" table="`WRITERAUDITING`">
+ <meta attribute="eclassName" inherit="false">WriterAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/annotations/mapkeyAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.elist/FeatureMapEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.elist/FeatureMapEAVAction_hsqldb_e_o_hibernate.hbm.xml
index e989652..20a47b4 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.elist/FeatureMapEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.elist/FeatureMapEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -11,4 +11,254 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl.SupplierPriceTypeImpl" entity-name="SupplierPriceType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="SupplierPriceType"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl.TranslatedDescriptionTypeImpl" entity-name="TranslatedDescriptionType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TranslatedDescriptionType"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="PriceByQuantityTypeAuditing" abstract="false" lazy="false" table="`PRICEBYQUANTITYTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">PriceByQuantityTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/elist/featuremapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="PRICEBYQUANTITYTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="price" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`PRICE`"/>
+ </property>
+ <property name="quantity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`QUANTITY`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ProductTypeAuditing" abstract="false" lazy="false" table="`PRODUCTTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">ProductTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/elist/featuremapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="PRODUCTTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="group" table="`PRODUCTTYPEAUDITING_GROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`PRODUCTTYPEAUDITING_GROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`PRODUCTTYPEAUDITING_GROUP_IDX`"/>
+ <one-to-many entity-name="ProductTypeAuditing_group"/>
+ </list>
+ <property name="productClassification" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`PRODUCTCLASSIFICATION`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.elist.featuremap.ProductClassification</param>
+ <param name="eclassifier">ProductClassification</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/store/test/emf/elist/featuremap</param>
+ </type>
+ </property>
+ <list name="group1" table="`PRODUCTTYPEAUDITING_GROUP1AUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`PRODUCTTYPEAUDITING_GROUP1_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`PRODUCTTYPEAUDITING_GROUP1_IDX`"/>
+ <one-to-many entity-name="ProductTypeAuditing_group1"/>
+ </list>
+ </class>
+ <class entity-name="ProductTypeAuditing_group" lazy="false" table="`PRODUCTTYPEAUDITING_GROUP`">
+ <meta attribute="featureMap" inherit="false">ProductTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="description" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP_DESCRIPTION`"/>
+ </property>
+ <property name="translatedDescription" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP_TRANSLATEDDESCRIPTION`"/>
+ </property>
+ </class>
+ <class entity-name="ProductTypeAuditing_group1" lazy="false" table="`PRODUCTTYPEAUDITING_GROUP1`">
+ <meta attribute="featureMap" inherit="false">ProductTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="priceByQuantity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP1_PRICEBYQUANTITY`"/>
+ </property>
+ <property name="priceFromSupplier" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP1_PRICEFROMSUPPLIER`"/>
+ </property>
+ <property name="simplePrice" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`GROUP1_SIMPLEPRICE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SupplierPriceTypeAuditing" abstract="false" lazy="false" table="`SUPPLIERPRICETYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">SupplierPriceTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/elist/featuremapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SUPPLIERPRICETYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="price" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`PRICE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="TranslatedDescriptionTypeAuditing" abstract="false" lazy="false" table="`TRANSLATEDDESCRIPTIONTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">TranslatedDescriptionTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/elist/featuremapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="TRANSLATEDDESCRIPTIONTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="description" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`DESCRIPTION`"/>
+ </property>
+ <property name="language" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`LANGUAGE`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.elist/FeatureMapEAVAction_hsqldb_h_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.elist/FeatureMapEAVAction_hsqldb_h_o_hibernate.hbm.xml
index e989652..b9f52b1 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.elist/FeatureMapEAVAction_hsqldb_h_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.elist/FeatureMapEAVAction_hsqldb_h_o_hibernate.hbm.xml
@@ -11,4 +11,266 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl.SupplierPriceTypeImpl" entity-name="SupplierPriceType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="SupplierPriceType"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl.TranslatedDescriptionTypeImpl" entity-name="TranslatedDescriptionType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TranslatedDescriptionType"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="PriceByQuantityTypeAuditing" abstract="false" lazy="false" discriminator-value="PriceByQuantityTypeAuditing" table="`PRICEBYQUANTITYTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">PriceByQuantityTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/elist/featuremapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="PRICEBYQUANTITYTYPEAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="PRICEBYQUANTITYTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="price" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`PRICE`"/>
+ </property>
+ <property name="quantity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`QUANTITY`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ProductTypeAuditing" abstract="false" lazy="false" discriminator-value="ProductTypeAuditing" table="`PRODUCTTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">ProductTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/elist/featuremapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="PRODUCTTYPEAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="PRODUCTTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="group" table="`PRODUCTTYPEAUDITING_GROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`PRODUCTTYPEAUDITING_GROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`PRODUCTTYPEAUDITING_GROUP_IDX`"/>
+ <one-to-many entity-name="ProductTypeAuditing_group"/>
+ </list>
+ <property name="productClassification" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`PRODUCTCLASSIFICATION`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.elist.featuremap.ProductClassification</param>
+ <param name="eclassifier">ProductClassification</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/store/test/emf/elist/featuremap</param>
+ </type>
+ </property>
+ <list name="group1" table="`PRODUCTTYPEAUDITING_GROUP1AUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`PRODUCTTYPEAUDITING_GROUP1_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`PRODUCTTYPEAUDITING_GROUP1_IDX`"/>
+ <one-to-many entity-name="ProductTypeAuditing_group1"/>
+ </list>
+ </class>
+ <class entity-name="ProductTypeAuditing_group" lazy="false" table="`PRODUCTTYPEAUDITING_GROUP`">
+ <meta attribute="featureMap" inherit="false">ProductTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="description" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP_DESCRIPTION`"/>
+ </property>
+ <property name="translatedDescription" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP_TRANSLATEDDESCRIPTION`"/>
+ </property>
+ </class>
+ <class entity-name="ProductTypeAuditing_group1" lazy="false" table="`PRODUCTTYPEAUDITING_GROUP1`">
+ <meta attribute="featureMap" inherit="false">ProductTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="priceByQuantity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP1_PRICEBYQUANTITY`"/>
+ </property>
+ <property name="priceFromSupplier" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP1_PRICEFROMSUPPLIER`"/>
+ </property>
+ <property name="simplePrice" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`GROUP1_SIMPLEPRICE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SupplierPriceTypeAuditing" abstract="false" lazy="false" discriminator-value="SupplierPriceTypeAuditing" table="`SUPPLIERPRICETYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">SupplierPriceTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/elist/featuremapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="SUPPLIERPRICETYPEAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SUPPLIERPRICETYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="price" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`PRICE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="TranslatedDescriptionTypeAuditing" abstract="false" lazy="false" discriminator-value="TranslatedDescriptionTypeAuditing" table="`TRANSLATEDDESCRIPTIONTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">TranslatedDescriptionTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/elist/featuremapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="TRANSLATEDDESCRIPTIONTYPEAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="TRANSLATEDDESCRIPTIONTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="description" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`DESCRIPTION`"/>
+ </property>
+ <property name="language" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`LANGUAGE`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVAction_hsqldb_e_o_hibernate.hbm.xml
index a933886..e575504 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -9,4 +9,388 @@
<subclass entity-name="Office" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Office" proxy="org.eclipse.emf.ecore.impl.DynamicEObjectImpl"/>
<subclass entity-name="Address" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Address" proxy="org.eclipse.emf.ecore.impl.DynamicEObjectImpl"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="PersonAuditing" abstract="false" lazy="true" table="`PERSONAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">PersonAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/dynamicAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="PERSONAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="group" table="`PERSONAUDITING_GROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`PERSONAUDITING_GROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`PERSONAUDITING_GROUP_IDX`"/>
+ <one-to-many entity-name="PersonAuditing_group"/>
+ </list>
+ </class>
+ <class entity-name="PersonAuditing_group" lazy="false" table="`PERSONAUDITING_GROUP`">
+ <meta attribute="featureMap" inherit="false">PersonAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="age" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_AGE`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_LENGTH`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="EmployeeAuditing" abstract="false" lazy="true" table="`EMPLOYEEAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">EmployeeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///www.elver.org/DynamicTestAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="EMPLOYEEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="group" table="`EMPLOYEEAUDITING_GROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`EMPLOYEEAUDITING_GROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`EMPLOYEEAUDITING_GROUP_IDX`"/>
+ <one-to-many entity-name="EmployeeAuditing_group"/>
+ </list>
+ <property name="manager" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`MANAGER`"/>
+ </property>
+ <property name="department" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`DEPARTMENT`"/>
+ </property>
+ </class>
+ <class entity-name="EmployeeAuditing_group" lazy="false" table="`EMPLOYEEAUDITING_GROUP`">
+ <meta attribute="featureMap" inherit="false">EmployeeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="age" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_AGE`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_LENGTH`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SpecialEmployeeAuditing" abstract="false" lazy="true" table="`SPECIALEMPLOYEEAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">SpecialEmployeeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///www.elver.org/DynamicTestAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="SPECIALEMPLOYEEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="group" table="`SPECIALEMPLOYEEAUDITING_GROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`SPECIALEMPLOYEEAUDITING_GROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SPECIALEMPLOYEEAUDITING_GROUP_IDX`"/>
+ <one-to-many entity-name="SpecialEmployeeAuditing_group"/>
+ </list>
+ <property name="manager" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`MANAGER`"/>
+ </property>
+ <property name="department" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`DEPARTMENT`"/>
+ </property>
+ <list name="offices" table="`SPECIALEMPLOYEEAUDITING_OFFICESAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SPECIALEMPLOYEEAUDITING_OFFICES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SPECIALEMPLOYEEAUDITING_OFFICES_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class entity-name="SpecialEmployeeAuditing_group" lazy="false" table="`SPECIALEMPLOYEEAUDITING_GROUP`">
+ <meta attribute="featureMap" inherit="false">SpecialEmployeeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="age" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_AGE`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_LENGTH`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="DepartmentAuditing" abstract="false" lazy="true" table="`DEPARTMENTAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">DepartmentAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///www.elver.org/DynamicTestAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="DEPARTMENTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="manager" table="`DEPARTMENTAUDITING_MANAGERAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`DEPARTMENTAUDITING_MANAGER_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`DEPARTMENTAUDITING_MANAGER_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="office" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`OFFICE`"/>
+ </property>
+ <property name="departmentType" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`DEPARTMENTTYPE`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.DynamicENumUserType">
+ <param name="eclassifier">DepartmentType</param>
+ <param name="epackage">http:///www.elver.org/DynamicTest</param>
+ </type>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="OfficeAuditing" abstract="false" lazy="true" table="`OFFICEAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">OfficeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///www.elver.org/DynamicTestAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="OFFICEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="address" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ADDRESS`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="AddressAuditing" abstract="false" lazy="true" table="`ADDRESSAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">AddressAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///www.elver.org/DynamicTestAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="ADDRESSAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVAction_hsqldb_h_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVAction_hsqldb_h_o_hibernate.hbm.xml
index a933886..671eb66 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVAction_hsqldb_h_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVAction_hsqldb_h_o_hibernate.hbm.xml
@@ -9,4 +9,406 @@
<subclass entity-name="Office" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Office" proxy="org.eclipse.emf.ecore.impl.DynamicEObjectImpl"/>
<subclass entity-name="Address" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Address" proxy="org.eclipse.emf.ecore.impl.DynamicEObjectImpl"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="PersonAuditing" abstract="false" lazy="true" discriminator-value="PersonAuditing" table="`PERSONAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">PersonAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/dynamicAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="PERSONAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="PERSONAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="group" table="`PERSONAUDITING_GROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`PERSONAUDITING_GROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`PERSONAUDITING_GROUP_IDX`"/>
+ <one-to-many entity-name="PersonAuditing_group"/>
+ </list>
+ </class>
+ <class entity-name="PersonAuditing_group" lazy="false" table="`PERSONAUDITING_GROUP`">
+ <meta attribute="featureMap" inherit="false">PersonAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="age" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_AGE`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_LENGTH`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="EmployeeAuditing" abstract="false" lazy="true" discriminator-value="EmployeeAuditing" table="`EMPLOYEEAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">EmployeeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///www.elver.org/DynamicTestAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="EMPLOYEEAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="EMPLOYEEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="group" table="`EMPLOYEEAUDITING_GROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`EMPLOYEEAUDITING_GROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`EMPLOYEEAUDITING_GROUP_IDX`"/>
+ <one-to-many entity-name="EmployeeAuditing_group"/>
+ </list>
+ <property name="manager" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`MANAGER`"/>
+ </property>
+ <property name="department" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`DEPARTMENT`"/>
+ </property>
+ </class>
+ <class entity-name="EmployeeAuditing_group" lazy="false" table="`EMPLOYEEAUDITING_GROUP`">
+ <meta attribute="featureMap" inherit="false">EmployeeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="age" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_AGE`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_LENGTH`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SpecialEmployeeAuditing" abstract="false" lazy="true" discriminator-value="SpecialEmployeeAuditing" table="`SPECIALEMPLOYEEAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">SpecialEmployeeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///www.elver.org/DynamicTestAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="SPECIALEMPLOYEEAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="SPECIALEMPLOYEEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="group" table="`SPECIALEMPLOYEEAUDITING_GROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`SPECIALEMPLOYEEAUDITING_GROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SPECIALEMPLOYEEAUDITING_GROUP_IDX`"/>
+ <one-to-many entity-name="SpecialEmployeeAuditing_group"/>
+ </list>
+ <property name="manager" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`MANAGER`"/>
+ </property>
+ <property name="department" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`DEPARTMENT`"/>
+ </property>
+ <list name="offices" table="`SPECIALEMPLOYEEAUDITING_OFFICESAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SPECIALEMPLOYEEAUDITING_OFFICES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SPECIALEMPLOYEEAUDITING_OFFICES_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class entity-name="SpecialEmployeeAuditing_group" lazy="false" table="`SPECIALEMPLOYEEAUDITING_GROUP`">
+ <meta attribute="featureMap" inherit="false">SpecialEmployeeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="age" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_AGE`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_LENGTH`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="DepartmentAuditing" abstract="false" lazy="true" discriminator-value="DepartmentAuditing" table="`DEPARTMENTAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">DepartmentAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///www.elver.org/DynamicTestAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="DEPARTMENTAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="DEPARTMENTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="manager" table="`DEPARTMENTAUDITING_MANAGERAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`DEPARTMENTAUDITING_MANAGER_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`DEPARTMENTAUDITING_MANAGER_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="office" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`OFFICE`"/>
+ </property>
+ <property name="departmentType" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`DEPARTMENTTYPE`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.DynamicENumUserType">
+ <param name="eclassifier">DepartmentType</param>
+ <param name="epackage">http:///www.elver.org/DynamicTest</param>
+ </type>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="OfficeAuditing" abstract="false" lazy="true" discriminator-value="OfficeAuditing" table="`OFFICEAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">OfficeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///www.elver.org/DynamicTestAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="OFFICEAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="OFFICEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="address" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ADDRESS`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="AddressAuditing" abstract="false" lazy="true" discriminator-value="AddressAuditing" table="`ADDRESSAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">AddressAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///www.elver.org/DynamicTestAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="ADDRESSAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="ADDRESSAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVNoDBSchemaAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVNoDBSchemaAction_hsqldb_e_o_hibernate.hbm.xml
index 2495acd..2f37f2e 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVNoDBSchemaAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/DynamicEAVNoDBSchemaAction_hsqldb_e_o_hibernate.hbm.xml
@@ -4,4 +4,73 @@
<hibernate-mapping auto-import="false">
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.dynamic.impl.PersonImpl" entity-name="Person" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Person" proxy="org.eclipse.emf.teneo.samples.emf.sample.dynamic.Person"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="PersonAuditing" abstract="false" lazy="true" table="`PERSONAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">PersonAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/dynamicAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="PERSONAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="group" table="`PERSONAUDITING_GROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`PERSONAUDITING_GROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`PERSONAUDITING_GROUP_IDX`"/>
+ <one-to-many entity-name="PersonAuditing_group"/>
+ </list>
+ </class>
+ <class entity-name="PersonAuditing_group" lazy="false" table="`PERSONAUDITING_GROUP`">
+ <meta attribute="featureMap" inherit="false">PersonAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="age" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_AGE`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`GROUP_LENGTH`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/FleetEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/FleetEAVAction_hsqldb_e_o_hibernate.hbm.xml
index 2924192..f5ef063 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/FleetEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/FleetEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -20,4 +20,1215 @@
<subclass entity-name="TransportationDevice" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TransportationDevice"/>
<subclass entity-name="VersionHolder" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="VersionHolder"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="VehicleAuditing" abstract="false" lazy="false" table="`PREFIX_VEHICLEAUDITING`">
+ <meta attribute="eclassName" inherit="false">VehicleAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="VEHICLEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="brand" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`BRAND`"/>
+ </property>
+ <property name="model" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MODEL`"/>
+ </property>
+ <property name="make" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MAKE`"/>
+ </property>
+ <property name="color" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`COLOR`"/>
+ </property>
+ <property name="plate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`PLATE`"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ID`"/>
+ </property>
+ <property name="year" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`YEAR`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`LENGTH`"/>
+ </property>
+ <list name="availableColors" table="`PREFIX_VEHICLEAUDITING_AVAILABLECOLORSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`VEHICLEAUDITING_AVAILABLECOLORS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`VEHICLEAUDITING_AVAILABLECOLORS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="owner" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`OWNER`"/>
+ </property>
+ <list name="manufacturedAt" table="`PREFIX_VEHICLEAUDITING_MANUFACTUREDATAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`VEHICLEAUDITING_MANUFACTUREDAT_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`VEHICLEAUDITING_MANUFACTUREDAT_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="tireSpec" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TIRESPEC`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="PersonAuditing" abstract="false" lazy="false" table="`PREFIX_PERSONAUDITING`">
+ <meta attribute="eclassName" inherit="false">PersonAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="PERSONAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DATE`"/>
+ </property>
+ <array name="touchedAttributes" table="`PREFIX_PERSONAUDITING_TOUCHEDATTRIBUTESAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`PERSONAUDITING_TOUCHEDATTRIBUTES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`PERSONAUDITING_TOUCHEDATTRIBUTES_IDX`"/>
+ <element type="byte"/>
+ </array>
+ <property name="versionHolder" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDER`"/>
+ </property>
+ <property name="versionHolderContainment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDERCONTAINMENT`"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ID`"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="employed" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`EMPLOYED`"/>
+ </property>
+ <list name="addresses" table="`PREFIX_PERSONAUDITING_ADDRESSESAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`PERSONAUDITING_ADDRESSES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`PERSONAUDITING_ADDRESSES_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <list name="ownedVehicles" table="`PREFIX_PERSONAUDITING_OWNEDVEHICLESAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`PERSONAUDITING_OWNEDVEHICLES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`PERSONAUDITING_OWNEDVEHICLES_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="birthAddress" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`BIRTHADDRESS`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="AddressAuditing" abstract="false" lazy="false" table="`PREFIX_ADDRESSAUDITING`">
+ <meta attribute="eclassName" inherit="false">AddressAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ADDRESSAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DATE`"/>
+ </property>
+ <array name="touchedAttributes" table="`PREFIX_ADDRESSAUDITING_TOUCHEDATTRIBUTESAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`ADDRESSAUDITING_TOUCHEDATTRIBUTES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`ADDRESSAUDITING_TOUCHEDATTRIBUTES_IDX`"/>
+ <element type="byte"/>
+ </array>
+ <property name="versionHolder" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDER`"/>
+ </property>
+ <property name="versionHolderContainment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDERCONTAINMENT`"/>
+ </property>
+ <property name="streetName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`STREETNAME`"/>
+ </property>
+ <property name="streetNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`STREETNUMBER`"/>
+ </property>
+ <property name="city" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CITY`"/>
+ </property>
+ <property name="country" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`COUNTRY`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="VehicleInfoAuditing" abstract="false" lazy="false" table="`PREFIX_VEHICLEINFOAUDITING`">
+ <meta attribute="eclassName" inherit="false">VehicleInfoAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="VEHICLEINFOAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="acquisitionDate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`ACQUISITIONDATE`"/>
+ </property>
+ <property name="vehicle" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VEHICLE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ManufacturingPlantAuditing" abstract="false" lazy="false" table="`PREFIX_MANUFACTURINGPLANTAUDITING`">
+ <meta attribute="eclassName" inherit="false">ManufacturingPlantAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="MANUFACTURINGPLANTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ID`"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="address" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ADDRESS`"/>
+ </property>
+ <property name="transportFleet" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TRANSPORTFLEET`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="FleetAuditing" abstract="false" lazy="false" table="`PREFIX_FLEETAUDITING`">
+ <meta attribute="eclassName" inherit="false">FleetAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="FLEETAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DATE`"/>
+ </property>
+ <array name="touchedAttributes" table="`PREFIX_FLEETAUDITING_TOUCHEDATTRIBUTESAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`FLEETAUDITING_TOUCHEDATTRIBUTES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`FLEETAUDITING_TOUCHEDATTRIBUTES_IDX`"/>
+ <element type="byte"/>
+ </array>
+ <property name="versionHolder" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDER`"/>
+ </property>
+ <property name="versionHolderContainment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDERCONTAINMENT`"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ID`"/>
+ </property>
+ <list name="vehicles" table="`PREFIX_FLEETAUDITING_VEHICLESAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`FLEETAUDITING_VEHICLES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`FLEETAUDITING_VEHICLES_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <list name="vehicleInformation" table="`PREFIX_FLEETAUDITING_VEHICLEINFORMATIONAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`FLEETAUDITING_VEHICLEINFORMATION_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`FLEETAUDITING_VEHICLEINFORMATION_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="serviceGarage" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`SERVICEGARAGE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="GarageAuditing" abstract="false" lazy="false" table="`PREFIX_GARAGEAUDITING`">
+ <meta attribute="eclassName" inherit="false">GarageAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="GARAGEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DATE`"/>
+ </property>
+ <array name="touchedAttributes" table="`PREFIX_GARAGEAUDITING_TOUCHEDATTRIBUTESAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`GARAGEAUDITING_TOUCHEDATTRIBUTES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`GARAGEAUDITING_TOUCHEDATTRIBUTES_IDX`"/>
+ <element type="byte"/>
+ </array>
+ <property name="versionHolder" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDER`"/>
+ </property>
+ <property name="versionHolderContainment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDERCONTAINMENT`"/>
+ </property>
+ <list name="vehicles" table="`PREFIX_GARAGEAUDITING_VEHICLESAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`GARAGEAUDITING_VEHICLES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`GARAGEAUDITING_VEHICLES_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="customerShuttles" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CUSTOMERSHUTTLES`"/>
+ </property>
+ <property name="address" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ADDRESS`"/>
+ </property>
+ <list name="fleetsUsingGarage" table="`PREFIX_GARAGEAUDITING_FLEETSUSINGGARAGEAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`GARAGEAUDITING_FLEETSUSINGGARAGE_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`GARAGEAUDITING_FLEETSUSINGGARAGE_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="TireAuditing" abstract="false" lazy="false" table="`PREFIX_TIREAUDITING`">
+ <meta attribute="eclassName" inherit="false">TireAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="TIREAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="radius" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`RADIUS`"/>
+ </property>
+ <property name="width" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`WIDTH`"/>
+ </property>
+ <property name="profile" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`PROFILE`"/>
+ </property>
+ <property name="make" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MAKE`"/>
+ </property>
+ <property name="model" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MODEL`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="HybridAuditing" abstract="false" lazy="false" table="`PREFIX_HYBRIDAUDITING`">
+ <meta attribute="eclassName" inherit="false">HybridAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="HYBRIDAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="passengerName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`PASSENGERNAME`"/>
+ </property>
+ <property name="brand" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`BRAND`"/>
+ </property>
+ <property name="model" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MODEL`"/>
+ </property>
+ <property name="make" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MAKE`"/>
+ </property>
+ <property name="color" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`COLOR`"/>
+ </property>
+ <property name="plate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`PLATE`"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ID`"/>
+ </property>
+ <property name="year" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`YEAR`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`LENGTH`"/>
+ </property>
+ <list name="availableColors" table="`PREFIX_HYBRIDAUDITING_AVAILABLECOLORSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`HYBRIDAUDITING_AVAILABLECOLORS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`HYBRIDAUDITING_AVAILABLECOLORS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="owner" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`OWNER`"/>
+ </property>
+ <list name="manufacturedAt" table="`PREFIX_HYBRIDAUDITING_MANUFACTUREDATAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`HYBRIDAUDITING_MANUFACTUREDAT_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`HYBRIDAUDITING_MANUFACTUREDAT_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="tireSpec" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TIRESPEC`"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DATE`"/>
+ </property>
+ <array name="touchedAttributes" table="`PREFIX_HYBRIDAUDITING_TOUCHEDATTRIBUTESAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`HYBRIDAUDITING_TOUCHEDATTRIBUTES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`HYBRIDAUDITING_TOUCHEDATTRIBUTES_IDX`"/>
+ <element type="byte"/>
+ </array>
+ <property name="versionHolder" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDER`"/>
+ </property>
+ <property name="versionHolderContainment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDERCONTAINMENT`"/>
+ </property>
+ <property name="numPassengers" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`NUMPASSENGERS`"/>
+ </property>
+ <property name="numTires" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`NUMTIRES`"/>
+ </property>
+ <list name="tires" table="`PREFIX_HYBRIDAUDITING_TIRESAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`HYBRIDAUDITING_TIRES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`HYBRIDAUDITING_TIRES_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="hasRechargePlug" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`HASRECHARGEPLUG`"/>
+ </property>
+ <property name="batteryLife" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`BATTERYLIFE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="CarAuditing" abstract="false" lazy="false" table="`PREFIX_CARAUDITING`">
+ <meta attribute="eclassName" inherit="false">CarAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="CARAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="passengerName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`PASSENGERNAME`"/>
+ </property>
+ <property name="brand" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`BRAND`"/>
+ </property>
+ <property name="model" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MODEL`"/>
+ </property>
+ <property name="make" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MAKE`"/>
+ </property>
+ <property name="color" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`COLOR`"/>
+ </property>
+ <property name="plate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`PLATE`"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ID`"/>
+ </property>
+ <property name="year" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`YEAR`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`LENGTH`"/>
+ </property>
+ <list name="availableColors" table="`PREFIX_CARAUDITING_AVAILABLECOLORSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`CARAUDITING_AVAILABLECOLORS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`CARAUDITING_AVAILABLECOLORS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="owner" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`OWNER`"/>
+ </property>
+ <list name="manufacturedAt" table="`PREFIX_CARAUDITING_MANUFACTUREDATAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`CARAUDITING_MANUFACTUREDAT_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`CARAUDITING_MANUFACTUREDAT_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="tireSpec" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TIRESPEC`"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DATE`"/>
+ </property>
+ <array name="touchedAttributes" table="`PREFIX_CARAUDITING_TOUCHEDATTRIBUTESAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`CARAUDITING_TOUCHEDATTRIBUTES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`CARAUDITING_TOUCHEDATTRIBUTES_IDX`"/>
+ <element type="byte"/>
+ </array>
+ <property name="versionHolder" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDER`"/>
+ </property>
+ <property name="versionHolderContainment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDERCONTAINMENT`"/>
+ </property>
+ <property name="numPassengers" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`NUMPASSENGERS`"/>
+ </property>
+ <property name="numTires" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`NUMTIRES`"/>
+ </property>
+ <list name="tires" table="`PREFIX_CARAUDITING_TIRESAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`CARAUDITING_TIRES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`CARAUDITING_TIRES_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="PassengerVehicleAuditing" abstract="false" lazy="false" table="`PREFIX_PASSENGERVEHICLEAUDITING`">
+ <meta attribute="eclassName" inherit="false">PassengerVehicleAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="PASSENGERVEHICLEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="passengerName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`PASSENGERNAME`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="EngineFactoryAuditing" abstract="false" lazy="false" table="`PREFIX_ENGINEFACTORYAUDITING`">
+ <meta attribute="eclassName" inherit="false">EngineFactoryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ENGINEFACTORYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ID`"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="address" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ADDRESS`"/>
+ </property>
+ <property name="transportFleet" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TRANSPORTFLEET`"/>
+ </property>
+ <property name="makesDieselEngines" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`MAKESDIESELENGINES`"/>
+ </property>
+ <list name="brands" table="`PREFIX_ENGINEFACTORYAUDITING_BRANDSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`ENGINEFACTORYAUDITING_BRANDS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`ENGINEFACTORYAUDITING_BRANDS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="USAddressAuditing" abstract="false" lazy="false" table="`PREFIX_USADDRESSAUDITING`">
+ <meta attribute="eclassName" inherit="false">USAddressAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="USADDRESSAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DATE`"/>
+ </property>
+ <array name="touchedAttributes" table="`PREFIX_USADDRESSAUDITING_TOUCHEDATTRIBUTESAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`USADDRESSAUDITING_TOUCHEDATTRIBUTES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`USADDRESSAUDITING_TOUCHEDATTRIBUTES_IDX`"/>
+ <element type="byte"/>
+ </array>
+ <property name="versionHolder" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDER`"/>
+ </property>
+ <property name="versionHolderContainment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDERCONTAINMENT`"/>
+ </property>
+ <property name="streetName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`STREETNAME`"/>
+ </property>
+ <property name="streetNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`STREETNUMBER`"/>
+ </property>
+ <property name="city" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CITY`"/>
+ </property>
+ <property name="country" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`COUNTRY`"/>
+ </property>
+ <property name="zipCode" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ZIPCODE`"/>
+ </property>
+ <property name="state" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`STATE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="VinAuditing" abstract="false" lazy="false" table="`PREFIX_VINAUDITING`">
+ <meta attribute="eclassName" inherit="false">VinAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="VINAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ID`"/>
+ </property>
+ <property name="installationDate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`INSTALLATIONDATE`"/>
+ </property>
+ <property name="vehicle" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VEHICLE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="TransportationDeviceAuditing" abstract="false" lazy="false" table="`PREFIX_TRANSPORTATIONDEVICEAUDITING`">
+ <meta attribute="eclassName" inherit="false">TransportationDeviceAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="TRANSPORTATIONDEVICEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="manufacturedBy" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MANUFACTUREDBY`"/>
+ </property>
+ <property name="year" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`YEAR`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="TemporalAuditing" abstract="false" lazy="false" table="`PREFIX_TEMPORALAUDITING`">
+ <meta attribute="eclassName" inherit="false">TemporalAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///temporal.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="TEMPORALAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DATE`"/>
+ </property>
+ <array name="touchedAttributes" table="`PREFIX_TEMPORALAUDITING_TOUCHEDATTRIBUTESAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`TEMPORALAUDITING_TOUCHEDATTRIBUTES_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`TEMPORALAUDITING_TOUCHEDATTRIBUTES_IDX`"/>
+ <element type="byte"/>
+ </array>
+ <property name="versionHolder" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDER`"/>
+ </property>
+ <property name="versionHolderContainment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VERSIONHOLDERCONTAINMENT`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="VersionHolderAuditing" abstract="false" lazy="false" table="`PREFIX_VERSIONHOLDERAUDITING`">
+ <meta attribute="eclassName" inherit="false">VersionHolderAuditing</meta>
+ <meta attribute="epackage" inherit="false">http:///temporal.ecoreAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="VERSIONHOLDERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="versions" table="`PREFIX_VERSIONHOLDERAUDITING_VERSIONSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`VERSIONHOLDERAUDITING_VERSIONS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`VERSIONHOLDERAUDITING_VERSIONS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <property name="indexOfContinuity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`INDEXOFCONTINUITY`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_hsqldb_e_o_hibernate.hbm.xml
index b643276..0d535dc 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -10,4 +10,180 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Library"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Writer"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="BookAuditing" abstract="false" lazy="false" table="`BOOKAUDITING`">
+ <meta attribute="eclassName" inherit="false">BookAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOKAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TITLE`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`PAGES`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`CATEGORY`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <property name="author" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`AUTHOR`"/>
+ </property>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TEST`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="LibraryAuditing" abstract="false" lazy="false" table="`LIBRARYAUDITING`">
+ <meta attribute="eclassName" inherit="false">LibraryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="LIBRARYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="writers" table="`LIBRARYAUDITING_WRITERSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_WRITERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_WRITERS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <list name="books" table="`LIBRARYAUDITING_BOOKSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterAuditing" abstract="false" lazy="false" table="`WRITERAUDITING`">
+ <meta attribute="eclassName" inherit="false">WriterAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="books" table="`WRITERAUDITING_BOOKSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`WRITERAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`WRITERAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_hsqldb_h_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_hsqldb_h_o_hibernate.hbm.xml
index b643276..84ffd7f 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_hsqldb_h_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVAction_hsqldb_h_o_hibernate.hbm.xml
@@ -10,4 +10,189 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Library"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Writer"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="BookAuditing" abstract="false" lazy="false" discriminator-value="BookAuditing" table="`BOOKAUDITING`">
+ <meta attribute="eclassName" inherit="false">BookAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="BOOKAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOKAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TITLE`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`PAGES`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`CATEGORY`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <property name="author" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`AUTHOR`"/>
+ </property>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TEST`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="LibraryAuditing" abstract="false" lazy="false" discriminator-value="LibraryAuditing" table="`LIBRARYAUDITING`">
+ <meta attribute="eclassName" inherit="false">LibraryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="LIBRARYAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="LIBRARYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="writers" table="`LIBRARYAUDITING_WRITERSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_WRITERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_WRITERS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <list name="books" table="`LIBRARYAUDITING_BOOKSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterAuditing" abstract="false" lazy="false" discriminator-value="WriterAuditing" table="`WRITERAUDITING`">
+ <meta attribute="eclassName" inherit="false">WriterAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="WRITERAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="books" table="`WRITERAUDITING_BOOKSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`WRITERAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`WRITERAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_hsqldb_e_o_hibernate.hbm.xml
index 71352ce..6578f4d 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_hsqldb_e_o_hibernate.hbm.xml
@@ -10,4 +10,180 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Library" proxy="org.eclipse.emf.teneo.samples.emf.sample.library.Library"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Writer" proxy="org.eclipse.emf.teneo.samples.emf.sample.library.Writer"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="BookAuditing" abstract="false" lazy="true" table="`BOOKAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">BookAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOKAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TITLE`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`PAGES`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`CATEGORY`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <property name="author" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`AUTHOR`"/>
+ </property>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TEST`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="LibraryAuditing" abstract="false" lazy="true" table="`LIBRARYAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">LibraryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="LIBRARYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="writers" table="`LIBRARYAUDITING_WRITERSAUDITING`" lazy="extra" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_WRITERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_WRITERS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <list name="books" table="`LIBRARYAUDITING_BOOKSAUDITING`" lazy="extra" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterAuditing" abstract="false" lazy="true" table="`WRITERAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">WriterAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="books" table="`WRITERAUDITING_BOOKSAUDITING`" lazy="extra" cascade="all">
+ <key update="true">
+ <column name="`WRITERAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`WRITERAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_hsqldb_h_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_hsqldb_h_o_hibernate.hbm.xml
index 71352ce..6dbbd4f 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_hsqldb_h_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVExtraLazyAction_hsqldb_h_o_hibernate.hbm.xml
@@ -10,4 +10,189 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Library" proxy="org.eclipse.emf.teneo.samples.emf.sample.library.Library"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Writer" proxy="org.eclipse.emf.teneo.samples.emf.sample.library.Writer"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="BookAuditing" abstract="false" lazy="true" discriminator-value="BookAuditing" table="`BOOKAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">BookAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="BOOKAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOKAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TITLE`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`PAGES`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`CATEGORY`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <property name="author" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`AUTHOR`"/>
+ </property>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TEST`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="LibraryAuditing" abstract="false" lazy="true" discriminator-value="LibraryAuditing" table="`LIBRARYAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">LibraryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="LIBRARYAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="LIBRARYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="writers" table="`LIBRARYAUDITING_WRITERSAUDITING`" lazy="extra" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_WRITERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_WRITERS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <list name="books" table="`LIBRARYAUDITING_BOOKSAUDITING`" lazy="extra" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterAuditing" abstract="false" lazy="true" discriminator-value="WriterAuditing" table="`WRITERAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">WriterAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="WRITERAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="books" table="`WRITERAUDITING_BOOKSAUDITING`" lazy="extra" cascade="all">
+ <key update="true">
+ <column name="`WRITERAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`WRITERAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVResourceAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVResourceAction_hsqldb_e_o_hibernate.hbm.xml
index 71352ce..f5b24bb 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVResourceAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVResourceAction_hsqldb_e_o_hibernate.hbm.xml
@@ -10,4 +10,180 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Library" proxy="org.eclipse.emf.teneo.samples.emf.sample.library.Library"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Writer" proxy="org.eclipse.emf.teneo.samples.emf.sample.library.Writer"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="BookAuditing" abstract="false" lazy="true" table="`BOOKAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">BookAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOKAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TITLE`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`PAGES`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`CATEGORY`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <property name="author" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`AUTHOR`"/>
+ </property>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TEST`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="LibraryAuditing" abstract="false" lazy="true" table="`LIBRARYAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">LibraryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="LIBRARYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="writers" table="`LIBRARYAUDITING_WRITERSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_WRITERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_WRITERS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <list name="books" table="`LIBRARYAUDITING_BOOKSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterAuditing" abstract="false" lazy="true" table="`WRITERAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">WriterAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="books" table="`WRITERAUDITING_BOOKSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`WRITERAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`WRITERAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVResourceAction_hsqldb_h_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVResourceAction_hsqldb_h_o_hibernate.hbm.xml
index 71352ce..2d3f4ef 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVResourceAction_hsqldb_h_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/LibraryEAVResourceAction_hsqldb_h_o_hibernate.hbm.xml
@@ -10,4 +10,189 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Library" proxy="org.eclipse.emf.teneo.samples.emf.sample.library.Library"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="Writer" proxy="org.eclipse.emf.teneo.samples.emf.sample.library.Writer"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="true" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="BookAuditing" abstract="false" lazy="true" discriminator-value="BookAuditing" table="`BOOKAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">BookAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="BOOKAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOKAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TITLE`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`PAGES`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`CATEGORY`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <property name="author" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`AUTHOR`"/>
+ </property>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TEST`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="LibraryAuditing" abstract="false" lazy="true" discriminator-value="LibraryAuditing" table="`LIBRARYAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">LibraryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="LIBRARYAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="LIBRARYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="writers" table="`LIBRARYAUDITING_WRITERSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_WRITERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_WRITERS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <list name="books" table="`LIBRARYAUDITING_BOOKSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`LIBRARYAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LIBRARYAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterAuditing" abstract="false" lazy="true" discriminator-value="WriterAuditing" table="`WRITERAUDITING`" proxy="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl">
+ <meta attribute="eclassName" inherit="false">WriterAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/LibraryAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="WRITERAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="proxy" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="books" table="`WRITERAUDITING_BOOKSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`WRITERAUDITING_BOOKS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`WRITERAUDITING_BOOKS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/ProductEAVTest_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/ProductEAVTest_hsqldb_e_o_hibernate.hbm.xml
index e4c7351..48f314f 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/ProductEAVTest_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.sample/ProductEAVTest_hsqldb_e_o_hibernate.hbm.xml
@@ -6,4 +6,167 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.product.impl.SupplierTypeImpl" entity-name="SupplierType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="SupplierType"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.sample.product.impl.ClassificationTypeImpl" entity-name="ClassificationType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="ClassificationType"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ProductTypeAuditing" abstract="false" lazy="false" table="`PRODUCTTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">ProductTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/productAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="PRODUCTTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="code" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CODE`"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ID`"/>
+ </property>
+ <property name="supplier" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`SUPPLIER`"/>
+ </property>
+ <property name="price" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`PRICE`"/>
+ </property>
+ <property name="createdOn" lazy="false" insert="true" update="true" not-null="false" unique="false" type="org.eclipse.emf.teneo.hibernate.mapping.XSDDate">
+ <column not-null="false" unique="false" name="`CREATEDON`"/>
+ </property>
+ <property name="AnyOne" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ANYONE`"/>
+ </property>
+ <list name="AnyList" table="`PRODUCTTYPEAUDITING_ANYLISTAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`PRODUCTTYPEAUDITING_ANYLIST_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`PRODUCTTYPEAUDITING_ANYLIST_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SupplierTypeAuditing" abstract="false" lazy="false" table="`SUPPLIERTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">SupplierTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/productAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SUPPLIERTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="noOfEmployees" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`NOOFEMPLOYEES`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ClassificationTypeAuditing" abstract="false" lazy="false" table="`CLASSIFICATIONTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">ClassificationTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/productAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="CLASSIFICATIONTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/AttributesEAVAction$1_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/AttributesEAVAction$1_hsqldb_e_o_hibernate.hbm.xml
index 2347380..d25b510 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/AttributesEAVAction$1_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/AttributesEAVAction$1_hsqldb_e_o_hibernate.hbm.xml
@@ -5,4 +5,177 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.attributes.impl.AImpl" entity-name="A" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="A"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.attributes.impl.RImpl" entity-name="R" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="R"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="AAuditing" abstract="false" lazy="false" table="`AAUDITING`">
+ <meta attribute="eclassName" inherit="false">AAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/attributesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="AAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="b" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`B`"/>
+ </property>
+ <property name="c" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`C`"/>
+ </property>
+ <property name="comment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`COMMENT`"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ID`"/>
+ </property>
+ <property name="d" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`D`"/>
+ </property>
+ <property name="myR" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MYR`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="attributesAuditing.DocumentRootAuditing" abstract="false" lazy="false">
+ <meta attribute="eclassName" inherit="false">DocumentRootAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/attributesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ATTRIBUTESAUDITING_DOCUMENTROOTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`"/>
+ </property>
+ <many-to-one name="mixed" entity-name="attributesAuditing.DocumentRootAuditing_mixed" cascade="all" not-null="false"/>
+ <property name="comment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`COMMENT`"/>
+ </property>
+ </class>
+ <class entity-name="attributesAuditing.DocumentRootAuditing_mixed" lazy="false" table="`ATTRIBUTESAUDITING_DOCUMENTROOTAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">attributesAuditing.DocumentRootAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="comment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`MIXED_COMMENT`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="RAuditing" abstract="false" lazy="false" table="`RAUDITING`">
+ <meta attribute="eclassName" inherit="false">RAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/attributesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="RAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/AttributesEAVAction$1_hsqldb_h_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/AttributesEAVAction$1_hsqldb_h_o_hibernate.hbm.xml
index 2347380..733fc81 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/AttributesEAVAction$1_hsqldb_h_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/AttributesEAVAction$1_hsqldb_h_o_hibernate.hbm.xml
@@ -5,4 +5,183 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.attributes.impl.AImpl" entity-name="A" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="A"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.attributes.impl.RImpl" entity-name="R" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="R"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="AAuditing" abstract="false" lazy="false" discriminator-value="AAuditing" table="`AAUDITING`">
+ <meta attribute="eclassName" inherit="false">AAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/attributesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="AAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="AAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="b" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`B`"/>
+ </property>
+ <property name="c" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`C`"/>
+ </property>
+ <property name="comment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`COMMENT`"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ID`"/>
+ </property>
+ <property name="d" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`D`"/>
+ </property>
+ <property name="myR" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MYR`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="attributesAuditing.DocumentRootAuditing" abstract="false" lazy="false">
+ <meta attribute="eclassName" inherit="false">DocumentRootAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/attributesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ATTRIBUTESAUDITING_DOCUMENTROOTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`"/>
+ </property>
+ <many-to-one name="mixed" entity-name="attributesAuditing.DocumentRootAuditing_mixed" cascade="all" not-null="false"/>
+ <property name="comment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`COMMENT`"/>
+ </property>
+ </class>
+ <class entity-name="attributesAuditing.DocumentRootAuditing_mixed" lazy="false" table="`ATTRIBUTESAUDITING_DOCUMENTROOTAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">attributesAuditing.DocumentRootAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="comment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`MIXED_COMMENT`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="RAuditing" abstract="false" lazy="false" discriminator-value="RAuditing" table="`RAUDITING`">
+ <meta attribute="eclassName" inherit="false">RAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/attributesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="RAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="RAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DateTimeEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DateTimeEAVAction_hsqldb_e_o_hibernate.hbm.xml
index 6b746e0..586d020 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DateTimeEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DateTimeEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -4,4 +4,119 @@
<hibernate-mapping auto-import="false">
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.datetime.impl.TestDateImpl" entity-name="TestDate" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TestDate"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="datetimeAuditing.DocumentRootAuditing" abstract="false" lazy="false">
+ <meta attribute="eclassName" inherit="false">DocumentRootAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/datetimeAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="DATETIMEAUDITING_DOCUMENTROOTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`"/>
+ </property>
+ <many-to-one name="mixed" entity-name="datetimeAuditing.DocumentRootAuditing_mixed" cascade="all" not-null="false"/>
+ <property name="root" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ROOT`"/>
+ </property>
+ </class>
+ <class entity-name="datetimeAuditing.DocumentRootAuditing_mixed" lazy="false" table="`DATETIMEAUDITING_DOCUMENTROOTAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">datetimeAuditing.DocumentRootAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="root" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_ROOT`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="TestDateAuditing" abstract="false" lazy="false" table="`TESTDATEAUDITING`">
+ <meta attribute="eclassName" inherit="false">TestDateAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/datetimeAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="TESTDATEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="org.eclipse.emf.teneo.hibernate.mapping.XSDDate">
+ <column not-null="false" unique="false" name="`DATE`"/>
+ </property>
+ <property name="datetime" lazy="false" insert="true" update="true" not-null="false" unique="false" type="org.eclipse.emf.teneo.hibernate.mapping.XSDDateTime">
+ <column not-null="false" unique="false" name="`DATETIME`"/>
+ </property>
+ <property name="time" lazy="false" insert="true" update="true" not-null="false" unique="false" type="org.eclipse.emf.teneo.hibernate.mapping.XSDDateTime">
+ <column not-null="false" unique="false" name="`TIME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DateTimeEAVAction_hsqldb_h_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DateTimeEAVAction_hsqldb_h_o_hibernate.hbm.xml
index 6b746e0..f2f36b0 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DateTimeEAVAction_hsqldb_h_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DateTimeEAVAction_hsqldb_h_o_hibernate.hbm.xml
@@ -4,4 +4,122 @@
<hibernate-mapping auto-import="false">
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.datetime.impl.TestDateImpl" entity-name="TestDate" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TestDate"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="datetimeAuditing.DocumentRootAuditing" abstract="false" lazy="false">
+ <meta attribute="eclassName" inherit="false">DocumentRootAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/datetimeAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="DATETIMEAUDITING_DOCUMENTROOTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`"/>
+ </property>
+ <many-to-one name="mixed" entity-name="datetimeAuditing.DocumentRootAuditing_mixed" cascade="all" not-null="false"/>
+ <property name="root" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ROOT`"/>
+ </property>
+ </class>
+ <class entity-name="datetimeAuditing.DocumentRootAuditing_mixed" lazy="false" table="`DATETIMEAUDITING_DOCUMENTROOTAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">datetimeAuditing.DocumentRootAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="root" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_ROOT`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="TestDateAuditing" abstract="false" lazy="false" discriminator-value="TestDateAuditing" table="`TESTDATEAUDITING`">
+ <meta attribute="eclassName" inherit="false">TestDateAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/datetimeAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="TESTDATEAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="TESTDATEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="org.eclipse.emf.teneo.hibernate.mapping.XSDDate">
+ <column not-null="false" unique="false" name="`DATE`"/>
+ </property>
+ <property name="datetime" lazy="false" insert="true" update="true" not-null="false" unique="false" type="org.eclipse.emf.teneo.hibernate.mapping.XSDDateTime">
+ <column not-null="false" unique="false" name="`DATETIME`"/>
+ </property>
+ <property name="time" lazy="false" insert="true" update="true" not-null="false" unique="false" type="org.eclipse.emf.teneo.hibernate.mapping.XSDDateTime">
+ <column not-null="false" unique="false" name="`TIME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DocumentRootEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DocumentRootEAVAction_hsqldb_e_o_hibernate.hbm.xml
index b712ecf..43bfd46 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DocumentRootEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/DocumentRootEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -5,4 +5,119 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.documentroot.impl.ComplexTypeImpl" entity-name="ComplexType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="ComplexType"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.documentroot.impl.DocumentRootImpl" entity-name="documentroot.DocumentRoot" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="documentroot.DocumentRoot"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ComplexTypeAuditing" abstract="false" lazy="false" table="`COMPLEXTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">ComplexTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/documentrootAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="COMPLEXTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TEST`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="documentrootAuditing.DocumentRootAuditing" abstract="false" lazy="false" table="`DOCUMENTROOTAUDITING_DOCUMENTROOTAUDITING`">
+ <meta attribute="eclassName" inherit="false">DocumentRootAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/documentrootAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="DOCUMENTROOTAUDITING_DOCUMENTROOTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="mixed" table="`DOCUMENTROOTAUDITING_DOCUMENTROOTAUDITING_MIXEDAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`DOCUMENTROOTAUDITING_MIXED_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`DOCUMENTROOTAUDITING_MIXED_IDX`"/>
+ <one-to-many entity-name="documentrootAuditing.DocumentRootAuditing_mixed"/>
+ </list>
+ </class>
+ <class entity-name="documentrootAuditing.DocumentRootAuditing_mixed" lazy="false" table="`DOCUMENTROOTAUDITING_DOCUMENTROOTAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">documentrootAuditing.DocumentRootAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="otherTest" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_OTHERTEST`"/>
+ </property>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_TEST`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListEAVAction_hsqldb_e_o_hibernate.hbm.xml
index 280a618..3876b3b 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -13,4 +13,325 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Writer"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterToStringMapEntryImpl" entity-name="WriterToStringMapEntry" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="WriterToStringMapEntry"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="BookAuditing" abstract="false" lazy="false" table="`BOOKAUDITING`">
+ <meta attribute="eclassName" inherit="false">BookAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOKAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TITLE`"/>
+ </property>
+ <list name="writers" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_WRITERS">
+ <column name="`BOOKAUDITING_WRITERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_WRITERS_IDX`"/>
+ <one-to-many entity-name="StringToWriterMapEntryAuditing"/>
+ </list>
+ <list name="keyWords" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_KEYWORDS">
+ <column name="`BOOKAUDITING_KEYWORDS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_KEYWORDS_IDX`"/>
+ <one-to-many entity-name="StringToStringMapEntryAuditing"/>
+ </list>
+ <list name="cityByWriter" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_CITYBYWRITER">
+ <column name="`BOOKAUDITING_CITYBYWRITER_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_CITYBYWRITER_IDX`"/>
+ <one-to-many entity-name="WriterToStringMapEntryAuditing"/>
+ </list>
+ <list name="categoryByDate" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_CATEGORYBYDATE">
+ <column name="`BOOKAUDITING_CATEGORYBYDATE_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_CATEGORYBYDATE_IDX`"/>
+ <one-to-many entity-name="DateToCategoryMapEntryAuditing"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="StringToWriterMapEntryAuditing" abstract="false" lazy="false" table="`STRINGTOWRITERMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">StringToWriterMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="STRINGTOWRITERMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="StringToStringMapEntryAuditing" abstract="false" lazy="false" table="`STRINGTOSTRINGMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">StringToStringMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="STRINGTOSTRINGMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterToStringMapEntryAuditing" abstract="false" lazy="false" table="`WRITERTOSTRINGMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">WriterToStringMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERTOSTRINGMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="DateToCategoryMapEntryAuditing" abstract="false" lazy="false" table="`DATETOCATEGORYMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">DateToCategoryMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="DATETOCATEGORYMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.Category</param>
+ <param name="eclassifier">Category</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emap</param>
+ </type>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterAuditing" abstract="false" lazy="false" table="`WRITERAUDITING`">
+ <meta attribute="eclassName" inherit="false">WriterAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListEAVAction_hsqldb_h_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListEAVAction_hsqldb_h_o_hibernate.hbm.xml
index 280a618..93574fb 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListEAVAction_hsqldb_h_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListEAVAction_hsqldb_h_o_hibernate.hbm.xml
@@ -13,4 +13,343 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Writer"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterToStringMapEntryImpl" entity-name="WriterToStringMapEntry" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="WriterToStringMapEntry"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="BookAuditing" abstract="false" lazy="false" discriminator-value="BookAuditing" table="`BOOKAUDITING`">
+ <meta attribute="eclassName" inherit="false">BookAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="BOOKAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOKAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TITLE`"/>
+ </property>
+ <list name="writers" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_WRITERS">
+ <column name="`BOOKAUDITING_WRITERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_WRITERS_IDX`"/>
+ <one-to-many entity-name="StringToWriterMapEntryAuditing"/>
+ </list>
+ <list name="keyWords" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_KEYWORDS">
+ <column name="`BOOKAUDITING_KEYWORDS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_KEYWORDS_IDX`"/>
+ <one-to-many entity-name="StringToStringMapEntryAuditing"/>
+ </list>
+ <list name="cityByWriter" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_CITYBYWRITER">
+ <column name="`BOOKAUDITING_CITYBYWRITER_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_CITYBYWRITER_IDX`"/>
+ <one-to-many entity-name="WriterToStringMapEntryAuditing"/>
+ </list>
+ <list name="categoryByDate" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_CATEGORYBYDATE">
+ <column name="`BOOKAUDITING_CATEGORYBYDATE_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_CATEGORYBYDATE_IDX`"/>
+ <one-to-many entity-name="DateToCategoryMapEntryAuditing"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="StringToWriterMapEntryAuditing" abstract="false" lazy="false" discriminator-value="StringToWriterMapEntryAuditing" table="`STRINGTOWRITERMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">StringToWriterMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="STRINGTOWRITERMAPENTRYAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="STRINGTOWRITERMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="StringToStringMapEntryAuditing" abstract="false" lazy="false" discriminator-value="StringToStringMapEntryAuditing" table="`STRINGTOSTRINGMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">StringToStringMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="STRINGTOSTRINGMAPENTRYAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="STRINGTOSTRINGMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterToStringMapEntryAuditing" abstract="false" lazy="false" discriminator-value="WriterToStringMapEntryAuditing" table="`WRITERTOSTRINGMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">WriterToStringMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="WRITERTOSTRINGMAPENTRYAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERTOSTRINGMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="DateToCategoryMapEntryAuditing" abstract="false" lazy="false" discriminator-value="DateToCategoryMapEntryAuditing" table="`DATETOCATEGORYMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">DateToCategoryMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="DATETOCATEGORYMAPENTRYAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="DATETOCATEGORYMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.Category</param>
+ <param name="eclassifier">Category</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emap</param>
+ </type>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterAuditing" abstract="false" lazy="false" discriminator-value="WriterAuditing" table="`WRITERAUDITING`">
+ <meta attribute="eclassName" inherit="false">WriterAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="WRITERAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListExtraLazyEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListExtraLazyEAVAction_hsqldb_e_o_hibernate.hbm.xml
index 280a618..8150a02 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListExtraLazyEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListExtraLazyEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -13,4 +13,325 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Writer"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterToStringMapEntryImpl" entity-name="WriterToStringMapEntry" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="WriterToStringMapEntry"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="BookAuditing" abstract="false" lazy="false" table="`BOOKAUDITING`">
+ <meta attribute="eclassName" inherit="false">BookAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOKAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TITLE`"/>
+ </property>
+ <list name="writers" inverse="true" lazy="extra" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_WRITERS">
+ <column name="`BOOKAUDITING_WRITERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_WRITERS_IDX`"/>
+ <one-to-many entity-name="StringToWriterMapEntryAuditing"/>
+ </list>
+ <list name="keyWords" inverse="true" lazy="extra" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_KEYWORDS">
+ <column name="`BOOKAUDITING_KEYWORDS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_KEYWORDS_IDX`"/>
+ <one-to-many entity-name="StringToStringMapEntryAuditing"/>
+ </list>
+ <list name="cityByWriter" inverse="true" lazy="extra" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_CITYBYWRITER">
+ <column name="`BOOKAUDITING_CITYBYWRITER_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_CITYBYWRITER_IDX`"/>
+ <one-to-many entity-name="WriterToStringMapEntryAuditing"/>
+ </list>
+ <list name="categoryByDate" inverse="true" lazy="extra" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_CATEGORYBYDATE">
+ <column name="`BOOKAUDITING_CATEGORYBYDATE_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_CATEGORYBYDATE_IDX`"/>
+ <one-to-many entity-name="DateToCategoryMapEntryAuditing"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="StringToWriterMapEntryAuditing" abstract="false" lazy="false" table="`STRINGTOWRITERMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">StringToWriterMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="STRINGTOWRITERMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="StringToStringMapEntryAuditing" abstract="false" lazy="false" table="`STRINGTOSTRINGMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">StringToStringMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="STRINGTOSTRINGMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterToStringMapEntryAuditing" abstract="false" lazy="false" table="`WRITERTOSTRINGMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">WriterToStringMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERTOSTRINGMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="DateToCategoryMapEntryAuditing" abstract="false" lazy="false" table="`DATETOCATEGORYMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">DateToCategoryMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="DATETOCATEGORYMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.Category</param>
+ <param name="eclassifier">Category</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emap</param>
+ </type>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterAuditing" abstract="false" lazy="false" table="`WRITERAUDITING`">
+ <meta attribute="eclassName" inherit="false">WriterAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListExtraLazyEAVAction_hsqldb_h_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListExtraLazyEAVAction_hsqldb_h_o_hibernate.hbm.xml
index 280a618..5e0900b 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListExtraLazyEAVAction_hsqldb_h_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EMapAsListExtraLazyEAVAction_hsqldb_h_o_hibernate.hbm.xml
@@ -13,4 +13,343 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Writer"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterToStringMapEntryImpl" entity-name="WriterToStringMapEntry" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="WriterToStringMapEntry"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="BookAuditing" abstract="false" lazy="false" discriminator-value="BookAuditing" table="`BOOKAUDITING`">
+ <meta attribute="eclassName" inherit="false">BookAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="BOOKAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOKAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TITLE`"/>
+ </property>
+ <list name="writers" inverse="true" lazy="extra" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_WRITERS">
+ <column name="`BOOKAUDITING_WRITERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_WRITERS_IDX`"/>
+ <one-to-many entity-name="StringToWriterMapEntryAuditing"/>
+ </list>
+ <list name="keyWords" inverse="true" lazy="extra" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_KEYWORDS">
+ <column name="`BOOKAUDITING_KEYWORDS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_KEYWORDS_IDX`"/>
+ <one-to-many entity-name="StringToStringMapEntryAuditing"/>
+ </list>
+ <list name="cityByWriter" inverse="true" lazy="extra" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_CITYBYWRITER">
+ <column name="`BOOKAUDITING_CITYBYWRITER_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_CITYBYWRITER_IDX`"/>
+ <one-to-many entity-name="WriterToStringMapEntryAuditing"/>
+ </list>
+ <list name="categoryByDate" inverse="true" lazy="extra" cascade="all,delete-orphan">
+ <key update="true" foreign-key="BOOKAUDITING_CATEGORYBYDATE">
+ <column name="`BOOKAUDITING_CATEGORYBYDATE_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`BOOKAUDITING_CATEGORYBYDATE_IDX`"/>
+ <one-to-many entity-name="DateToCategoryMapEntryAuditing"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="StringToWriterMapEntryAuditing" abstract="false" lazy="false" discriminator-value="StringToWriterMapEntryAuditing" table="`STRINGTOWRITERMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">StringToWriterMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="STRINGTOWRITERMAPENTRYAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="STRINGTOWRITERMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="StringToStringMapEntryAuditing" abstract="false" lazy="false" discriminator-value="StringToStringMapEntryAuditing" table="`STRINGTOSTRINGMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">StringToStringMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="STRINGTOSTRINGMAPENTRYAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="STRINGTOSTRINGMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterToStringMapEntryAuditing" abstract="false" lazy="false" discriminator-value="WriterToStringMapEntryAuditing" table="`WRITERTOSTRINGMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">WriterToStringMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="WRITERTOSTRINGMAPENTRYAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERTOSTRINGMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="DateToCategoryMapEntryAuditing" abstract="false" lazy="false" discriminator-value="DateToCategoryMapEntryAuditing" table="`DATETOCATEGORYMAPENTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">DateToCategoryMapEntryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="DATETOCATEGORYMAPENTRYAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="DATETOCATEGORYMAPENTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="key" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`KEY`"/>
+ </property>
+ <property name="value" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.Category</param>
+ <param name="eclassifier">Category</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emap</param>
+ </type>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="WriterAuditing" abstract="false" lazy="false" discriminator-value="WriterAuditing" table="`WRITERAUDITING`">
+ <meta attribute="eclassName" inherit="false">WriterAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/emapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="WRITERAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="WRITERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EcoreAttrsEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EcoreAttrsEAVAction_hsqldb_e_o_hibernate.hbm.xml
index d3275e8..4883502 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EcoreAttrsEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/EcoreAttrsEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -7,4 +7,254 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.impl.MixedImpl" entity-name="Mixed" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Mixed"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.impl.NameListImpl" entity-name="NameList" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="NameList"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ElementAuditing" abstract="false" lazy="false" table="`ELEMENTAUDITING`">
+ <meta attribute="eclassName" inherit="false">ElementAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/ecoreattrsAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ELEMENTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="nameMap" table="`ELEMENTAUDITING_NAMEMAPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`ELEMENTAUDITING_NAMEMAP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`ELEMENTAUDITING_NAMEMAP_IDX`"/>
+ <one-to-many entity-name="ElementAuditing_nameMap"/>
+ </list>
+ </class>
+ <class entity-name="ElementAuditing_nameMap" lazy="false" table="`ELEMENTAUDITING_NAMEMAP`">
+ <meta attribute="featureMap" inherit="false">ElementAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="names" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAMEMAP_NAMES`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="FeatureAuditing" abstract="false" lazy="false" table="`FEATUREAUDITING`">
+ <meta attribute="eclassName" inherit="false">FeatureAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/ecoreattrsAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="FEATUREAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="aMap" table="`FEATUREAUDITING_AMAPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`FEATUREAUDITING_AMAP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`FEATUREAUDITING_AMAP_IDX`"/>
+ <one-to-many entity-name="FeatureAuditing_aMap"/>
+ </list>
+ </class>
+ <class entity-name="FeatureAuditing_aMap" lazy="false" table="`FEATUREAUDITING_AMAP`">
+ <meta attribute="featureMap" inherit="false">FeatureAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`AMAP_NAME`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`AMAP_VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="MixedAuditing" abstract="false" lazy="false" table="`MIXEDAUDITING`">
+ <meta attribute="eclassName" inherit="false">MixedAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/ecoreattrsAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="MIXEDAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="mixed" table="`MIXEDAUDITING_MIXEDAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`MIXEDAUDITING_MIXED_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`MIXEDAUDITING_MIXED_IDX`"/>
+ <one-to-many entity-name="MixedAuditing_mixed"/>
+ </list>
+ </class>
+ <class entity-name="MixedAuditing_mixed" lazy="false" table="`MIXEDAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">MixedAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_NAME`"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`MIXED_VALUE`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="NameListAuditing" abstract="false" lazy="false" table="`NAMELISTAUDITING`">
+ <meta attribute="eclassName" inherit="false">NameListAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/ecoreattrsAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="NAMELISTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="firstName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`FIRSTNAME`"/>
+ </property>
+ <property name="middleName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIDDLENAME`"/>
+ </property>
+ <property name="lastName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`LASTNAME`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/ExtensionEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/ExtensionEAVAction_hsqldb_e_o_hibernate.hbm.xml
index 60ac81d..8e4a5e3 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/ExtensionEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/ExtensionEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -14,4 +14,393 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.InternationalPriceImpl" entity-name="InternationalPrice" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="InternationalPrice"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.USAddressImpl" entity-name="USAddress" abstract="false" lazy="false" extends="Address" discriminator-value="USAddress"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="AddressAuditing" abstract="false" lazy="false" table="`ADDRESSAUDITING`">
+ <meta attribute="eclassName" inherit="false">AddressAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/extensionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ADDRESSAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="street" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`STREET`"/>
+ </property>
+ <property name="city" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CITY`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="AddressListAuditing" abstract="false" lazy="false" table="`ADDRESSLISTAUDITING`">
+ <meta attribute="eclassName" inherit="false">AddressListAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/extensionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ADDRESSLISTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="firstAddress" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`FIRSTADDRESS`"/>
+ </property>
+ <list name="secondAddress" table="`ADDRESSLISTAUDITING_SECONDADDRESSAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`ADDRESSLISTAUDITING_SECONDADDRESS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`ADDRESSLISTAUDITING_SECONDADDRESS_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="DistrictUKAddressAuditing" abstract="false" lazy="false" table="`DISTRICTUKADDRESSAUDITING`">
+ <meta attribute="eclassName" inherit="false">DistrictUKAddressAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/extensionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="DISTRICTUKADDRESSAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="street" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`STREET`"/>
+ </property>
+ <property name="city" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CITY`"/>
+ </property>
+ <property name="postcode" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`POSTCODE`"/>
+ </property>
+ <property name="exportCode" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`EXPORTCODE`"/>
+ </property>
+ <property name="district" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`DISTRICT`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="FirstAddressHolderAuditing" abstract="false" lazy="false" table="`FIRSTADDRESSHOLDERAUDITING`">
+ <meta attribute="eclassName" inherit="false">FirstAddressHolderAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/extensionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="FIRSTADDRESSHOLDERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="value" table="`FIRSTADDRESSHOLDERAUDITING_VALUEAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`FIRSTADDRESSHOLDERAUDITING_VALUE_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`FIRSTADDRESSHOLDERAUDITING_VALUE_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="InternationalPriceAuditing" abstract="false" lazy="false" table="`INTERNATIONALPRICEAUDITING`">
+ <meta attribute="eclassName" inherit="false">InternationalPriceAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/extensionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="INTERNATIONALPRICEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigDecimal">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ <property name="currency" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CURRENCY`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="UKAddressAuditing" abstract="false" lazy="false" table="`UKADDRESSAUDITING`">
+ <meta attribute="eclassName" inherit="false">UKAddressAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/extensionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="UKADDRESSAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="street" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`STREET`"/>
+ </property>
+ <property name="city" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CITY`"/>
+ </property>
+ <property name="postcode" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`POSTCODE`"/>
+ </property>
+ <property name="exportCode" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`EXPORTCODE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="USAddressAuditing" abstract="false" lazy="false" table="`USADDRESSAUDITING`">
+ <meta attribute="eclassName" inherit="false">USAddressAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/extensionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="USADDRESSAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <property name="street" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`STREET`"/>
+ </property>
+ <property name="city" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CITY`"/>
+ </property>
+ <property name="state" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`STATE`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.USState</param>
+ <param name="eclassifier">USState</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/extension</param>
+ </type>
+ </property>
+ <property name="zip" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`ZIP`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/GroupEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/GroupEAVAction_hsqldb_e_o_hibernate.hbm.xml
index 144d4b2..23df88f 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/GroupEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/GroupEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -8,4 +8,384 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.impl.SimpleAllMapTypeImpl" entity-name="SimpleAllMapType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="SimpleAllMapType"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.impl.SimpleAllTypeImpl" entity-name="SimpleAllType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="SimpleAllType"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="AddressAuditing" abstract="false" lazy="false" table="`ADDRESSAUDITING`">
+ <meta attribute="eclassName" inherit="false">AddressAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/groupallAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ADDRESSAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="group" table="`ADDRESSAUDITING_GROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`ADDRESSAUDITING_GROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`ADDRESSAUDITING_GROUP_IDX`"/>
+ <one-to-many entity-name="AddressAuditing_group"/>
+ </list>
+ </class>
+ <class entity-name="AddressAuditing_group" lazy="false" table="`ADDRESSAUDITING_GROUP`">
+ <meta attribute="featureMap" inherit="false">AddressAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP_NAME`"/>
+ </property>
+ <property name="longName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP_LONGNAME`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="AddressGroupAuditing" abstract="false" lazy="false" table="`ADDRESSGROUPAUDITING`">
+ <meta attribute="eclassName" inherit="false">AddressGroupAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/groupallAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ADDRESSGROUPAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="groupName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUPNAME`"/>
+ </property>
+ <property name="shipTo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`SHIPTO`"/>
+ </property>
+ <property name="billTo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`BILLTO`"/>
+ </property>
+ <property name="simpleAddress" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`SIMPLEADDRESS`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="AddressListAuditing" abstract="false" lazy="false" table="`ADDRESSLISTAUDITING`">
+ <meta attribute="eclassName" inherit="false">AddressListAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/groupallAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ADDRESSLISTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="groupName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUPNAME`"/>
+ </property>
+ <list name="addrs" table="`ADDRESSLISTAUDITING_ADDRSAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`ADDRESSLISTAUDITING_ADDRS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`ADDRESSLISTAUDITING_ADDRS_IDX`"/>
+ <one-to-many entity-name="AddressListAuditing_addrs"/>
+ </list>
+ </class>
+ <class entity-name="AddressListAuditing_addrs" lazy="false" table="`ADDRESSLISTAUDITING_ADDRS`">
+ <meta attribute="featureMap" inherit="false">AddressListAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="shipTo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ADDRS_SHIPTO`"/>
+ </property>
+ <property name="billTo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ADDRS_BILLTO`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="groupallAuditing.DocumentRootAuditing" abstract="false" lazy="false">
+ <meta attribute="eclassName" inherit="false">DocumentRootAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/groupallAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="GROUPALLAUDITING_DOCUMENTROOTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`"/>
+ </property>
+ <many-to-one name="mixed" entity-name="groupallAuditing.DocumentRootAuditing_mixed" cascade="all" not-null="false"/>
+ <property name="simpleAll" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`SIMPLEALL`"/>
+ </property>
+ <property name="simpleAllMap" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`SIMPLEALLMAP`"/>
+ </property>
+ </class>
+ <class entity-name="groupallAuditing.DocumentRootAuditing_mixed" lazy="false" table="`GROUPALLAUDITING_DOCUMENTROOTAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">groupallAuditing.DocumentRootAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="simpleAll" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_SIMPLEALL`"/>
+ </property>
+ <property name="simpleAllMap" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_SIMPLEALLMAP`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SimpleAllMapTypeAuditing" abstract="false" lazy="false" table="`SIMPLEALLMAPTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">SimpleAllMapTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/groupallAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SIMPLEALLMAPTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="allMap" table="`SIMPLEALLMAPTYPEAUDITING_ALLMAPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`SIMPLEALLMAPTYPEAUDITING_ALLMAP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLEALLMAPTYPEAUDITING_ALLMAP_IDX`"/>
+ <one-to-many entity-name="SimpleAllMapTypeAuditing_allMap"/>
+ </list>
+ </class>
+ <class entity-name="SimpleAllMapTypeAuditing_allMap" lazy="false" table="`SIMPLEALLMAPTYPEAUDITING_ALLMAP`">
+ <meta attribute="featureMap" inherit="false">SimpleAllMapTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="aaa" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ALLMAP_AAA`"/>
+ </property>
+ <property name="bbb" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ALLMAP_BBB`"/>
+ </property>
+ <property name="ccc" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ALLMAP_CCC`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SimpleAllTypeAuditing" abstract="false" lazy="false" table="`SIMPLEALLTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">SimpleAllTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/groupallAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SIMPLEALLTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="aaa" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`AAA`"/>
+ </property>
+ <property name="bbb" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`BBB`"/>
+ </property>
+ <property name="ccc" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CCC`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/ListEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/ListEAVAction_hsqldb_e_o_hibernate.hbm.xml
index d4f6bbf..a149dfb 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/ListEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/ListEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -16,4 +16,59 @@
</typedef>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.list.impl.statesByCountryImpl" entity-name="statesByCountry" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="statesByCountry"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="statesByCountryAuditing" abstract="false" lazy="false" table="`STATESBYCOUNTRYAUDITING`">
+ <meta attribute="eclassName" inherit="false">statesByCountryAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/listAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="STATESBYCOUNTRYAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="country" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`COUNTRY`"/>
+ </property>
+ <property name="index" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`INDEX`"/>
+ </property>
+ <property name="allStates" lazy="false" insert="true" update="true" not-null="false" unique="false" type="list.StateList">
+ <column not-null="false" unique="false" name="`ALLSTATES`"/>
+ </property>
+ <property name="sixImportantStates" lazy="false" insert="true" update="true" not-null="false" unique="false" type="list.SixStatesList">
+ <column not-null="false" unique="false" name="`SIXIMPORTANTSTATES`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/MixedEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/MixedEAVAction_hsqldb_e_o_hibernate.hbm.xml
index c6a833c..f202b43 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/MixedEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/MixedEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -5,4 +5,208 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.mixed.impl.LetterBodyTypeImpl" entity-name="LetterBodyType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="LetterBodyType"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.mixed.impl.SalutationTypeImpl" entity-name="SalutationType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="SalutationType"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="mixedAuditing.DocumentRootAuditing" abstract="false" lazy="false">
+ <meta attribute="eclassName" inherit="false">DocumentRootAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/mixedAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="MIXEDAUDITING_DOCUMENTROOTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`"/>
+ </property>
+ <many-to-one name="mixed" entity-name="mixedAuditing.DocumentRootAuditing_mixed" cascade="all" not-null="false"/>
+ <property name="letterBody" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`LETTERBODY`"/>
+ </property>
+ </class>
+ <class entity-name="mixedAuditing.DocumentRootAuditing_mixed" lazy="false" table="`MIXEDAUDITING_DOCUMENTROOTAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">mixedAuditing.DocumentRootAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="letterBody" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_LETTERBODY`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="LetterBodyTypeAuditing" abstract="false" lazy="false" table="`LETTERBODYTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">LetterBodyTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/mixedAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="LETTERBODYTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="mixed" table="`LETTERBODYTYPEAUDITING_MIXEDAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`LETTERBODYTYPEAUDITING_MIXED_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`LETTERBODYTYPEAUDITING_MIXED_IDX`"/>
+ <one-to-many entity-name="LetterBodyTypeAuditing_mixed"/>
+ </list>
+ </class>
+ <class entity-name="LetterBodyTypeAuditing_mixed" lazy="false" table="`LETTERBODYTYPEAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">LetterBodyTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="salutation" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_SALUTATION`"/>
+ </property>
+ <property name="quantity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`MIXED_QUANTITY`"/>
+ </property>
+ <property name="productName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_PRODUCTNAME`"/>
+ </property>
+ <property name="shipDate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="org.eclipse.emf.teneo.hibernate.mapping.XSDDate">
+ <column not-null="false" unique="false" name="`MIXED_SHIPDATE`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SalutationTypeAuditing" abstract="false" lazy="false" table="`SALUTATIONTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">SalutationTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/mixedAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SALUTATIONTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="mixed" table="`SALUTATIONTYPEAUDITING_MIXEDAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`SALUTATIONTYPEAUDITING_MIXED_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SALUTATIONTYPEAUDITING_MIXED_IDX`"/>
+ <one-to-many entity-name="SalutationTypeAuditing_mixed"/>
+ </list>
+ </class>
+ <class entity-name="SalutationTypeAuditing_mixed" lazy="false" table="`SALUTATIONTYPEAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">SalutationTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_NAME`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/NestedGroupEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/NestedGroupEAVAction_hsqldb_e_o_hibernate.hbm.xml
index 1505e37..816beb6 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/NestedGroupEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/NestedGroupEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -6,4 +6,214 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.nestedgroup.impl.CTypeImpl" entity-name="CType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="CType"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.nestedgroup.impl.ElementImpl" entity-name="Element" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Element"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="AAuditing" abstract="false" lazy="false" table="`AAUDITING`">
+ <meta attribute="eclassName" inherit="false">AAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/nestedgroupAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="AAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="group" table="`AAUDITING_GROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`AAUDITING_GROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`AAUDITING_GROUP_IDX`"/>
+ <one-to-many entity-name="AAuditing_group"/>
+ </list>
+ </class>
+ <class entity-name="AAuditing_group" lazy="false" table="`AAUDITING_GROUP`">
+ <meta attribute="featureMap" inherit="false">AAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="b" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP_B`"/>
+ </property>
+ <property name="c" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`GROUP_C`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="CTypeAuditing" abstract="false" lazy="false" table="`CTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">CTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/nestedgroupAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="CTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="cname" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CNAME`"/>
+ </property>
+ <property name="cvalue" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`CVALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ElementAuditing" abstract="false" lazy="false" table="`ELEMENTAUDITING`">
+ <meta attribute="eclassName" inherit="false">ElementAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/nestedgroupAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ELEMENTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="mixed" table="`ELEMENTAUDITING_MIXEDAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`ELEMENTAUDITING_MIXED_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`ELEMENTAUDITING_MIXED_IDX`"/>
+ <one-to-many entity-name="ElementAuditing_mixed"/>
+ </list>
+ </class>
+ <class entity-name="ElementAuditing_mixed" lazy="false" table="`ELEMENTAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">ElementAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_NAME`"/>
+ </property>
+ <list name="true" table="`MIXED_ELEMENTAUDITING_TRUEAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`MIXED_ELEMENTAUDITING_TRUE_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`MIXED_ELEMENTAUDITING_TRUE_IDX`"/>
+ <one-to-many entity-name="ElementAuditing_true"/>
+ </list>
+ <property name="c" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_C`"/>
+ </property>
+ <property name="recursive" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_RECURSIVE`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class entity-name="ElementAuditing_true" lazy="false" table="`ELEMENTAUDITING_TRUE`">
+ <meta attribute="featureMap" inherit="false">ElementAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="c" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TRUE_C`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimpleTypeEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimpleTypeEAVAction_hsqldb_e_o_hibernate.hbm.xml
index 44c1870..67c5752 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimpleTypeEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimpleTypeEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -14,4 +14,314 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.impl.SimpleTypeImpl" entity-name="SimpleType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="SimpleType"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.impl.SimpleTypeObjectImpl" entity-name="SimpleTypeObject" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="SimpleTypeObject"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SimpleListAuditing" abstract="false" lazy="false" table="`SIMPLELISTAUDITING`">
+ <meta attribute="eclassName" inherit="false">SimpleListAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/simpletypesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SIMPLELISTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="code" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CODE`"/>
+ </property>
+ <list name="boo" table="`SIMPLELISTAUDITING_BOOAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_BOO_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_BOO_IDX`"/>
+ <element type="boolean"/>
+ </list>
+ <list name="byt" table="`SIMPLELISTAUDITING_BYTAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_BYT_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_BYT_IDX`"/>
+ <element type="java.lang.Byte"/>
+ </list>
+ <list name="doubl" table="`SIMPLELISTAUDITING_DOUBLAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_DOUBL_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_DOUBL_IDX`"/>
+ <element type="java.lang.Double"/>
+ </list>
+ <list name="floa" table="`SIMPLELISTAUDITING_FLOAAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_FLOA_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_FLOA_IDX`"/>
+ <element type="java.lang.Float"/>
+ </list>
+ <list name="inte" table="`SIMPLELISTAUDITING_INTEAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_INTE_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_INTE_IDX`"/>
+ <element type="java.lang.Integer"/>
+ </list>
+ <list name="long" table="`SIMPLELISTAUDITING_LONGAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_LONG_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_LONG_IDX`"/>
+ <element type="java.lang.Long"/>
+ </list>
+ <list name="shor" table="`SIMPLELISTAUDITING_SHORAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_SHOR_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_SHOR_IDX`"/>
+ <element type="short"/>
+ </list>
+ <list name="enu" table="`SIMPLELISTAUDITING_ENUAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_ENU_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_ENU_IDX`"/>
+ <element>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.SimpleEnum</param>
+ <param name="eclassifier">SimpleEnum</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/simpletypes</param>
+ </type>
+ </element>
+ </list>
+ <list name="dat" table="`SIMPLELISTAUDITING_DATAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_DAT_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_DAT_IDX`"/>
+ <element type="timestamp"/>
+ </list>
+ <list name="limitedstring" table="`SIMPLELISTAUDITING_LIMITEDSTRINGAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_LIMITEDSTRING_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_LIMITEDSTRING_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <list name="stri" table="`SIMPLELISTAUDITING_STRIAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_STRI_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_STRI_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <array name="intArray" table="`SIMPLELISTAUDITING_INTARRAYAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_INTARRAY_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_INTARRAY_IDX`"/>
+ <element type="int"/>
+ </array>
+ <array name="doubleArray" table="`SIMPLELISTAUDITING_DOUBLEARRAYAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_DOUBLEARRAY_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_DOUBLEARRAY_IDX`"/>
+ <element type="double"/>
+ </array>
+ <property name="stringArray" lazy="false" insert="true" update="true" not-null="false" unique="false" type="simpletypes.StringArray">
+ <column not-null="false" unique="false" name="`STRINGARRAY`"/>
+ </property>
+ <array name="byteArray" table="`SIMPLELISTAUDITING_BYTEARRAYAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_BYTEARRAY_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_BYTEARRAY_IDX`"/>
+ <element type="byte"/>
+ </array>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SimpleTypeAuditing" abstract="false" lazy="false" table="`SIMPLETYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">SimpleTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/simpletypesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SIMPLETYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="code" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CODE`"/>
+ </property>
+ <property name="boo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`BOO`"/>
+ </property>
+ <property name="byt" lazy="false" insert="true" update="true" not-null="false" unique="false" type="byte">
+ <column not-null="false" unique="false" name="`BYT`"/>
+ </property>
+ <property name="doubl" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`DOUBL`"/>
+ </property>
+ <property name="float" lazy="false" insert="true" update="true" not-null="false" unique="false" type="float">
+ <column not-null="false" unique="false" name="`FLOAT`"/>
+ </property>
+ <property name="inte" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`INTE`"/>
+ </property>
+ <property name="lon" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`LON`"/>
+ </property>
+ <property name="shor" lazy="false" insert="true" update="true" not-null="false" unique="false" type="short">
+ <column not-null="false" unique="false" name="`SHOR`"/>
+ </property>
+ <property name="enu" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`ENU`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.SimpleEnum</param>
+ <param name="eclassifier">SimpleEnum</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/simpletypes</param>
+ </type>
+ </property>
+ <property name="dat" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DAT`"/>
+ </property>
+ <property name="limitedstring" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`LIMITEDSTRING`" length="10"/>
+ </property>
+ <property name="limitedDecimal" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigDecimal">
+ <column not-null="false" unique="false" name="`LIMITEDDECIMAL`" precision="4" scale="1"/>
+ </property>
+ <property name="extraLimitedString" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`EXTRALIMITEDSTRING`" length="5"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SimpleTypeObjectAuditing" abstract="false" lazy="false" table="`SIMPLETYPEOBJECTAUDITING`">
+ <meta attribute="eclassName" inherit="false">SimpleTypeObjectAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/simpletypesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SIMPLETYPEOBJECTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="code" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CODE`"/>
+ </property>
+ <property name="boo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Boolean">
+ <column not-null="false" unique="false" name="`BOO`"/>
+ </property>
+ <property name="byt" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Byte">
+ <column not-null="false" unique="false" name="`BYT`"/>
+ </property>
+ <property name="doubl" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Double">
+ <column not-null="false" unique="false" name="`DOUBL`"/>
+ </property>
+ <property name="float" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Float">
+ <column not-null="false" unique="false" name="`FLOAT`"/>
+ </property>
+ <property name="inte" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Integer">
+ <column not-null="false" unique="false" name="`INTE`"/>
+ </property>
+ <property name="lon" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Long">
+ <column not-null="false" unique="false" name="`LON`"/>
+ </property>
+ <property name="shor" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Short">
+ <column not-null="false" unique="false" name="`SHOR`"/>
+ </property>
+ <property name="dat" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DAT`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimpleTypeEAVAction_hsqldb_h_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimpleTypeEAVAction_hsqldb_h_o_hibernate.hbm.xml
index 44c1870..e787deb 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimpleTypeEAVAction_hsqldb_h_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimpleTypeEAVAction_hsqldb_h_o_hibernate.hbm.xml
@@ -14,4 +14,323 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.impl.SimpleTypeImpl" entity-name="SimpleType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="SimpleType"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.impl.SimpleTypeObjectImpl" entity-name="SimpleTypeObject" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="SimpleTypeObject"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SimpleListAuditing" abstract="false" lazy="false" discriminator-value="SimpleListAuditing" table="`SIMPLELISTAUDITING`">
+ <meta attribute="eclassName" inherit="false">SimpleListAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/simpletypesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="SIMPLELISTAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SIMPLELISTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="code" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CODE`"/>
+ </property>
+ <list name="boo" table="`SIMPLELISTAUDITING_BOOAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_BOO_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_BOO_IDX`"/>
+ <element type="boolean"/>
+ </list>
+ <list name="byt" table="`SIMPLELISTAUDITING_BYTAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_BYT_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_BYT_IDX`"/>
+ <element type="java.lang.Byte"/>
+ </list>
+ <list name="doubl" table="`SIMPLELISTAUDITING_DOUBLAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_DOUBL_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_DOUBL_IDX`"/>
+ <element type="java.lang.Double"/>
+ </list>
+ <list name="floa" table="`SIMPLELISTAUDITING_FLOAAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_FLOA_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_FLOA_IDX`"/>
+ <element type="java.lang.Float"/>
+ </list>
+ <list name="inte" table="`SIMPLELISTAUDITING_INTEAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_INTE_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_INTE_IDX`"/>
+ <element type="java.lang.Integer"/>
+ </list>
+ <list name="long" table="`SIMPLELISTAUDITING_LONGAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_LONG_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_LONG_IDX`"/>
+ <element type="java.lang.Long"/>
+ </list>
+ <list name="shor" table="`SIMPLELISTAUDITING_SHORAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_SHOR_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_SHOR_IDX`"/>
+ <element type="short"/>
+ </list>
+ <list name="enu" table="`SIMPLELISTAUDITING_ENUAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_ENU_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_ENU_IDX`"/>
+ <element>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.SimpleEnum</param>
+ <param name="eclassifier">SimpleEnum</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/simpletypes</param>
+ </type>
+ </element>
+ </list>
+ <list name="dat" table="`SIMPLELISTAUDITING_DATAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_DAT_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_DAT_IDX`"/>
+ <element type="timestamp"/>
+ </list>
+ <list name="limitedstring" table="`SIMPLELISTAUDITING_LIMITEDSTRINGAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_LIMITEDSTRING_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_LIMITEDSTRING_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <list name="stri" table="`SIMPLELISTAUDITING_STRIAUDITING`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_STRI_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_STRI_IDX`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <array name="intArray" table="`SIMPLELISTAUDITING_INTARRAYAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_INTARRAY_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_INTARRAY_IDX`"/>
+ <element type="int"/>
+ </array>
+ <array name="doubleArray" table="`SIMPLELISTAUDITING_DOUBLEARRAYAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_DOUBLEARRAY_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_DOUBLEARRAY_IDX`"/>
+ <element type="double"/>
+ </array>
+ <property name="stringArray" lazy="false" insert="true" update="true" not-null="false" unique="false" type="simpletypes.StringArray">
+ <column not-null="false" unique="false" name="`STRINGARRAY`"/>
+ </property>
+ <array name="byteArray" table="`SIMPLELISTAUDITING_BYTEARRAYAUDITING`" cascade="all">
+ <key update="true">
+ <column name="`SIMPLELISTAUDITING_BYTEARRAY_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SIMPLELISTAUDITING_BYTEARRAY_IDX`"/>
+ <element type="byte"/>
+ </array>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SimpleTypeAuditing" abstract="false" lazy="false" discriminator-value="SimpleTypeAuditing" table="`SIMPLETYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">SimpleTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/simpletypesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="SIMPLETYPEAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SIMPLETYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="code" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CODE`"/>
+ </property>
+ <property name="boo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`BOO`"/>
+ </property>
+ <property name="byt" lazy="false" insert="true" update="true" not-null="false" unique="false" type="byte">
+ <column not-null="false" unique="false" name="`BYT`"/>
+ </property>
+ <property name="doubl" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`DOUBL`"/>
+ </property>
+ <property name="float" lazy="false" insert="true" update="true" not-null="false" unique="false" type="float">
+ <column not-null="false" unique="false" name="`FLOAT`"/>
+ </property>
+ <property name="inte" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`INTE`"/>
+ </property>
+ <property name="lon" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`LON`"/>
+ </property>
+ <property name="shor" lazy="false" insert="true" update="true" not-null="false" unique="false" type="short">
+ <column not-null="false" unique="false" name="`SHOR`"/>
+ </property>
+ <property name="enu" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`ENU`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.SimpleEnum</param>
+ <param name="eclassifier">SimpleEnum</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/simpletypes</param>
+ </type>
+ </property>
+ <property name="dat" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DAT`"/>
+ </property>
+ <property name="limitedstring" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`LIMITEDSTRING`" length="10"/>
+ </property>
+ <property name="limitedDecimal" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigDecimal">
+ <column not-null="false" unique="false" name="`LIMITEDDECIMAL`" precision="4" scale="1"/>
+ </property>
+ <property name="extraLimitedString" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`EXTRALIMITEDSTRING`" length="5"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SimpleTypeObjectAuditing" abstract="false" lazy="false" discriminator-value="SimpleTypeObjectAuditing" table="`SIMPLETYPEOBJECTAUDITING`">
+ <meta attribute="eclassName" inherit="false">SimpleTypeObjectAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/schemaconstructs/simpletypesAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="`DTYPE`" index="SIMPLETYPEOBJECTAUDITINGDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SIMPLETYPEOBJECTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="code" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`CODE`"/>
+ </property>
+ <property name="boo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Boolean">
+ <column not-null="false" unique="false" name="`BOO`"/>
+ </property>
+ <property name="byt" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Byte">
+ <column not-null="false" unique="false" name="`BYT`"/>
+ </property>
+ <property name="doubl" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Double">
+ <column not-null="false" unique="false" name="`DOUBL`"/>
+ </property>
+ <property name="float" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Float">
+ <column not-null="false" unique="false" name="`FLOAT`"/>
+ </property>
+ <property name="inte" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Integer">
+ <column not-null="false" unique="false" name="`INTE`"/>
+ </property>
+ <property name="lon" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Long">
+ <column not-null="false" unique="false" name="`LON`"/>
+ </property>
+ <property name="shor" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.Short">
+ <column not-null="false" unique="false" name="`SHOR`"/>
+ </property>
+ <property name="dat" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`DAT`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimplefeaturemapEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimplefeaturemapEAVAction_hsqldb_e_o_hibernate.hbm.xml
index a267c4c..3ddcca1 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimplefeaturemapEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SimplefeaturemapEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -5,4 +5,125 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simplefeaturemap.impl.PurchaseOrderImpl" entity-name="PurchaseOrder" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="PurchaseOrder"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simplefeaturemap.impl.SupplierImpl" entity-name="Supplier" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="Supplier"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="PurchaseOrderAuditing" abstract="false" lazy="false" table="`PURCHASEORDERAUDITING`">
+ <meta attribute="eclassName" inherit="false">PurchaseOrderAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/simplefeaturemapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="PURCHASEORDERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="SupplierAuditing" abstract="false" lazy="false" table="`SUPPLIERAUDITING`">
+ <meta attribute="eclassName" inherit="false">SupplierAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/simplefeaturemapAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SUPPLIERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="orders" table="`SUPPLIERAUDITING_ORDERSAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`SUPPLIERAUDITING_ORDERS_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`SUPPLIERAUDITING_ORDERS_IDX`"/>
+ <one-to-many entity-name="SupplierAuditing_orders"/>
+ </list>
+ </class>
+ <class entity-name="SupplierAuditing_orders" lazy="false" table="`SUPPLIERAUDITING_ORDERS`">
+ <meta attribute="featureMap" inherit="false">SupplierAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="preferredOrders" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ORDERS_PREFERREDORDERS`"/>
+ </property>
+ <property name="standardOrders" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ORDERS_STANDARDORDERS`"/>
+ </property>
+ <property name="hardCopyOrderReference" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ORDERS_HARDCOPYORDERREFERENCE`"/>
+ </property>
+ <property name="hardCopyOrderNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`ORDERS_HARDCOPYORDERNUMBER`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SubstitutionEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SubstitutionEAVAction_hsqldb_e_o_hibernate.hbm.xml
index cbe231b..20e9988 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SubstitutionEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SubstitutionEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -8,4 +8,408 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.impl.NumberTypeImpl" entity-name="NumberType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="NumberType"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.impl.OddComplexNumberTypeImpl" entity-name="OddComplexNumberType" abstract="false" lazy="false" extends="ComplexNumber" discriminator-value="OddComplexNumberType"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ComplexNumberAuditing" abstract="false" lazy="false" table="`COMPLEXNUMBERAUDITING`">
+ <meta attribute="eclassName" inherit="false">ComplexNumberAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/substitutionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="COMPLEXNUMBERAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ <property name="unit" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`UNIT`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="substitutionAuditing.DocumentRootAuditing" abstract="false" lazy="false">
+ <meta attribute="eclassName" inherit="false">DocumentRootAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/substitutionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SUBSTITUTIONAUDITING_DOCUMENTROOTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`"/>
+ </property>
+ <many-to-one name="mixed" entity-name="substitutionAuditing.DocumentRootAuditing_mixed" cascade="all" not-null="false"/>
+ <property name="even" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`EVEN`"/>
+ </property>
+ <property name="mySimpleAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`MYSIMPLEABSTRACT`"/>
+ </property>
+ <property name="evenComplexNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`EVENCOMPLEXNUMBER`"/>
+ </property>
+ <property name="myComplexAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MYCOMPLEXABSTRACT`"/>
+ </property>
+ <property name="multiNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MULTINUMBER`"/>
+ </property>
+ <property name="number" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NUMBER`"/>
+ </property>
+ <property name="odd" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`ODD`"/>
+ </property>
+ <property name="oddComplexNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ODDCOMPLEXNUMBER`"/>
+ </property>
+ </class>
+ <class entity-name="substitutionAuditing.DocumentRootAuditing_mixed" lazy="false" table="`SUBSTITUTIONAUDITING_DOCUMENTROOTAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">substitutionAuditing.DocumentRootAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="even" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`MIXED_EVEN`"/>
+ </property>
+ <property name="mySimpleAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`MIXED_MYSIMPLEABSTRACT`"/>
+ </property>
+ <property name="evenComplexNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_EVENCOMPLEXNUMBER`"/>
+ </property>
+ <property name="myComplexAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_MYCOMPLEXABSTRACT`"/>
+ </property>
+ <property name="multiNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_MULTINUMBER`"/>
+ </property>
+ <property name="number" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_NUMBER`"/>
+ </property>
+ <property name="odd" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`MIXED_ODD`"/>
+ </property>
+ <property name="oddComplexNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_ODDCOMPLEXNUMBER`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="EvenComplexNumberTypeAuditing" abstract="false" lazy="false" table="`EVENCOMPLEXNUMBERTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">EvenComplexNumberTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/substitutionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="EVENCOMPLEXNUMBERTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ <property name="unit" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`UNIT`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="MultiNumberTypeAuditing" abstract="false" lazy="false" table="`MULTINUMBERTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">MultiNumberTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/substitutionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="MULTINUMBERTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="myComplexAbstractGroup" table="`MULTINUMBERTYPEAUDITING_MYCOMPLEXABSTRACTGROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`MULTINUMBERTYPEAUDITING_MYCOMPLEXABSTRACTGROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`MULTINUMBERTYPEAUDITING_MYCOMPLEXABSTRACTGROUP_IDX`"/>
+ <one-to-many entity-name="MultiNumberTypeAuditing_myComplexAbstractGroup"/>
+ </list>
+ </class>
+ <class entity-name="MultiNumberTypeAuditing_myComplexAbstractGroup" lazy="false" table="`MULTINUMBERTYPEAUDITING_MYCOMPLEXABSTRACTGROUP`">
+ <meta attribute="featureMap" inherit="false">MultiNumberTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="myComplexAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MYCOMPLEXABSTRACTGROUP_MYCOMPLEXABSTRACT`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="NumberTypeAuditing" abstract="false" lazy="false" table="`NUMBERTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">NumberTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/substitutionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="NUMBERTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`NAME`"/>
+ </property>
+ <list name="mySimpleAbstractGroup" table="`NUMBERTYPEAUDITING_MYSIMPLEABSTRACTGROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`NUMBERTYPEAUDITING_MYSIMPLEABSTRACTGROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`NUMBERTYPEAUDITING_MYSIMPLEABSTRACTGROUP_IDX`"/>
+ <one-to-many entity-name="NumberTypeAuditing_mySimpleAbstractGroup"/>
+ </list>
+ <list name="myComplexAbstractGroup" table="`NUMBERTYPEAUDITING_MYCOMPLEXABSTRACTGROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`NUMBERTYPEAUDITING_MYCOMPLEXABSTRACTGROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`NUMBERTYPEAUDITING_MYCOMPLEXABSTRACTGROUP_IDX`"/>
+ <one-to-many entity-name="NumberTypeAuditing_myComplexAbstractGroup"/>
+ </list>
+ </class>
+ <class entity-name="NumberTypeAuditing_mySimpleAbstractGroup" lazy="false" table="`NUMBERTYPEAUDITING_MYSIMPLEABSTRACTGROUP`">
+ <meta attribute="featureMap" inherit="false">NumberTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="mySimpleAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`MYSIMPLEABSTRACTGROUP_MYSIMPLEABSTRACT`"/>
+ </property>
+ </class>
+ <class entity-name="NumberTypeAuditing_myComplexAbstractGroup" lazy="false" table="`NUMBERTYPEAUDITING_MYCOMPLEXABSTRACTGROUP`">
+ <meta attribute="featureMap" inherit="false">NumberTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="myComplexAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MYCOMPLEXABSTRACTGROUP_MYCOMPLEXABSTRACT`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="OddComplexNumberTypeAuditing" abstract="false" lazy="false" table="`ODDCOMPLEXNUMBERTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">OddComplexNumberTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/substitutionAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ODDCOMPLEXNUMBERTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ <property name="unit" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`UNIT`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SubstitutionzvonEAVAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SubstitutionzvonEAVAction_hsqldb_e_o_hibernate.hbm.xml
index 030c5eb..24814c2 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SubstitutionzvonEAVAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.hibernate.test.emf.schemaconstructs/SubstitutionzvonEAVAction_hsqldb_e_o_hibernate.hbm.xml
@@ -7,4 +7,324 @@
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.impl.ComplexOddTypeImpl" entity-name="ComplexOddType" abstract="false" lazy="false" extends="ComplexAAA" discriminator-value="ComplexOddType"/>
<subclass name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.impl.RootTypeImpl" entity-name="RootType" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="RootType"/>
<subclass name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" extends="EAV_EObject" discriminator-value="TeneoAuditCommitInfo"/>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ComplexAAAAuditing" abstract="false" lazy="false" table="`COMPLEXAAAAUDITING`">
+ <meta attribute="eclassName" inherit="false">ComplexAAAAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/substitutionzvonAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="COMPLEXAAAAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ComplexEvenTypeAuditing" abstract="false" lazy="false" table="`COMPLEXEVENTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">ComplexEvenTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/substitutionzvonAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="COMPLEXEVENTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="ComplexOddTypeAuditing" abstract="false" lazy="false" table="`COMPLEXODDTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">ComplexOddTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/substitutionzvonAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="COMPLEXODDTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`VALUE`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="substitutionzvonAuditing.DocumentRootAuditing" abstract="false" lazy="false">
+ <meta attribute="eclassName" inherit="false">DocumentRootAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/substitutionzvonAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="SUBSTITUTIONZVONAUDITING_DOCUMENTROOTAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`"/>
+ </property>
+ <many-to-one name="mixed" entity-name="substitutionzvonAuditing.DocumentRootAuditing_mixed" cascade="all" not-null="false"/>
+ <property name="complexEven" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`COMPLEXEVEN`"/>
+ </property>
+ <property name="myComplexAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MYCOMPLEXABSTRACT`"/>
+ </property>
+ <property name="complexOdd" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`COMPLEXODD`"/>
+ </property>
+ <property name="even" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`EVEN`"/>
+ </property>
+ <property name="myAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`MYABSTRACT`"/>
+ </property>
+ <property name="odd" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`ODD`"/>
+ </property>
+ <property name="root" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`ROOT`"/>
+ </property>
+ </class>
+ <class entity-name="substitutionzvonAuditing.DocumentRootAuditing_mixed" lazy="false" table="`SUBSTITUTIONZVONAUDITING_DOCUMENTROOTAUDITING_MIXED`">
+ <meta attribute="featureMap" inherit="false">substitutionzvonAuditing.DocumentRootAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="complexEven" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_COMPLEXEVEN`"/>
+ </property>
+ <property name="myComplexAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_MYCOMPLEXABSTRACT`"/>
+ </property>
+ <property name="complexOdd" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_COMPLEXODD`"/>
+ </property>
+ <property name="even" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`MIXED_EVEN`"/>
+ </property>
+ <property name="myAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`MIXED_MYABSTRACT`"/>
+ </property>
+ <property name="odd" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`MIXED_ODD`"/>
+ </property>
+ <property name="root" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MIXED_ROOT`"/>
+ </property>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="RootTypeAuditing" abstract="false" lazy="false" table="`ROOTTYPEAUDITING`">
+ <meta attribute="eclassName" inherit="false">RootTypeAuditing</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/store/test/emf/schemaconstructs/substitutionzvonAuditing</meta>
+ <id name="teneo_audit_id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_ID`"/>
+ <generator class="native"/>
+ </id>
+ <version name="teneo_version" type="long">
+ <column not-null="true" unique="false" name="`TENEO_VERSION`"/>
+ </version>
+ <property name="teneo_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OBJECT_ID`" unique-key="c0,c1,c2"/>
+ </property>
+ <property name="teneo_owner_object_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_OWNER_OBJECT_ID`" index="teneo_derived_object"/>
+ </property>
+ <property name="teneo_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_START`" unique-key="c0"/>
+ </property>
+ <property name="teneo_end" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_END`" unique-key="c1"/>
+ </property>
+ <many-to-one name="teneo_commit_info" entity-name="TeneoAuditCommitInfo" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ROOTTYPEAUDITING_TENEO_COMMIT_INFO" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`TENEOAUDITCOMMITINFO_TENEO_COMMIT_INFO_ID`"/>
+ </many-to-one>
+ <property name="teneo_audit_kind" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`TENEO_AUDIT_KIND`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.TeneoAuditKind</param>
+ <param name="eclassifier">TeneoAuditKind</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/hibernate/auditing</param>
+ </type>
+ </property>
+ <property name="teneo_container_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_ID`"/>
+ </property>
+ <property name="teneo_container_feature_id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TENEO_CONTAINER_FEATURE_ID`"/>
+ </property>
+ <property name="teneo_previous_start" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`TENEO_PREVIOUS_START`" unique-key="c2"/>
+ </property>
+ <list name="myAbstractGroup" table="`ROOTTYPEAUDITING_MYABSTRACTGROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`ROOTTYPEAUDITING_MYABSTRACTGROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`ROOTTYPEAUDITING_MYABSTRACTGROUP_IDX`"/>
+ <one-to-many entity-name="RootTypeAuditing_myAbstractGroup"/>
+ </list>
+ <list name="myComplexAbstractGroup" table="`ROOTTYPEAUDITING_MYCOMPLEXABSTRACTGROUPAUDITING`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`ROOTTYPEAUDITING_MYCOMPLEXABSTRACTGROUP_TENEO_AUDIT_ID`" unique="false"/>
+ </key>
+ <list-index column="`ROOTTYPEAUDITING_MYCOMPLEXABSTRACTGROUP_IDX`"/>
+ <one-to-many entity-name="RootTypeAuditing_myComplexAbstractGroup"/>
+ </list>
+ </class>
+ <class entity-name="RootTypeAuditing_myAbstractGroup" lazy="false" table="`ROOTTYPEAUDITING_MYABSTRACTGROUP`">
+ <meta attribute="featureMap" inherit="false">RootTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="myAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigInteger">
+ <column not-null="false" unique="false" name="`MYABSTRACTGROUP_MYABSTRACT`"/>
+ </property>
+ </class>
+ <class entity-name="RootTypeAuditing_myComplexAbstractGroup" lazy="false" table="`ROOTTYPEAUDITING_MYCOMPLEXABSTRACTGROUP`">
+ <meta attribute="featureMap" inherit="false">RootTypeAuditing</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="myComplexAbstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`MYCOMPLEXABSTRACTGROUP_MYCOMPLEXABSTRACT`"/>
+ </property>
+ </class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_e_o_hibernate.hbm.xml
index 9f8a034..3828bdd 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_e_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_e_o_hibernate.hbm.xml
@@ -20,6 +20,15 @@
<property name="photo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="binary">
<column not-null="false" unique="false" name="`PHOTO`" length="1000000"/>
</property>
+ <list name="texts" table="`PERSON_TEXTS`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`PERSON_TEXTS_ID`" unique="false"/>
+ </key>
+ <list-index column="`PERSON_TEXTS_IDX`"/>
+ <element not-null="false" unique="false" type="text">
+ <column not-null="false" unique="false" name="`TEXTS`" length="1000000"/>
+ </element>
+ </list>
</class>
<class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" table="`TENEOAUDITCOMMITINFO`">
<meta attribute="eclassName" inherit="false">TeneoAuditCommitInfo</meta>
@@ -89,12 +98,17 @@
<property name="address" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
<column not-null="false" unique="false" name="`ADDRESS`"/>
</property>
- <array name="photo" table="`PERSONAUDITING_PHOTOAUDITING`" cascade="all">
+ <property name="photo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="binary">
+ <column not-null="false" unique="false" name="`PHOTO`" length="1000000"/>
+ </property>
+ <list name="texts" table="`PERSONAUDITING_TEXTSAUDITING`" lazy="true" cascade="all">
<key update="true">
- <column name="`PERSONAUDITING_PHOTO_TENEO_AUDIT_ID`" unique="false"/>
+ <column name="`PERSONAUDITING_TEXTS_TENEO_AUDIT_ID`" unique="false"/>
</key>
- <list-index column="`PERSONAUDITING_PHOTO_IDX`"/>
- <element type="byte"/>
- </array>
+ <list-index column="`PERSONAUDITING_TEXTS_IDX`"/>
+ <element not-null="false" unique="false" type="text">
+ <column not-null="false" unique="false" name="`TEXTS`" length="1000000"/>
+ </element>
+ </list>
</class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_h_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_h_o_hibernate.hbm.xml
index bf4ee14..6179652 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_h_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_h_o_hibernate.hbm.xml
@@ -23,6 +23,15 @@
<property name="photo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="binary">
<column not-null="false" unique="false" name="`PHOTO`" length="1000000"/>
</property>
+ <list name="texts" table="`PERSON_TEXTS`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`PERSON_TEXTS_ID`" unique="false"/>
+ </key>
+ <list-index column="`PERSON_TEXTS_IDX`"/>
+ <element not-null="false" unique="false" type="text">
+ <column not-null="false" unique="false" name="`TEXTS`" length="1000000"/>
+ </element>
+ </list>
</class>
<class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditCommitInfoImpl" entity-name="TeneoAuditCommitInfo" abstract="false" lazy="false" discriminator-value="TeneoAuditCommitInfo" table="`TENEOAUDITCOMMITINFO`">
<meta attribute="eclassName" inherit="false">TeneoAuditCommitInfo</meta>
@@ -98,12 +107,17 @@
<property name="address" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
<column not-null="false" unique="false" name="`ADDRESS`"/>
</property>
- <array name="photo" table="`PERSONAUDITING_PHOTOAUDITING`" cascade="all">
+ <property name="photo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="binary">
+ <column not-null="false" unique="false" name="`PHOTO`" length="1000000"/>
+ </property>
+ <list name="texts" table="`PERSONAUDITING_TEXTSAUDITING`" lazy="true" cascade="all">
<key update="true">
- <column name="`PERSONAUDITING_PHOTO_TENEO_AUDIT_ID`" unique="false"/>
+ <column name="`PERSONAUDITING_TEXTS_TENEO_AUDIT_ID`" unique="false"/>
</key>
- <list-index column="`PERSONAUDITING_PHOTO_IDX`"/>
- <element type="byte"/>
- </array>
+ <list-index column="`PERSONAUDITING_TEXTS_IDX`"/>
+ <element not-null="false" unique="false" type="text">
+ <column not-null="false" unique="false" name="`TEXTS`" length="1000000"/>
+ </element>
+ </list>
</class>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_x_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_x_o_hibernate.hbm.xml
index 91dce93..4d329cd 100644
--- a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_x_o_hibernate.hbm.xml
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.annotations/LobAction_hsqldb_x_o_hibernate.hbm.xml
@@ -27,6 +27,15 @@
<property name="photo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="binary">
<column not-null="false" unique="false" name="`PHOTO`" length="1000000"/>
</property>
+ <list name="texts" table="`PERSON_TEXTS`" lazy="true" cascade="all">
+ <key update="true">
+ <column name="`PERSON_TEXTS_E_ID`" unique="false"/>
+ </key>
+ <list-index column="`PERSON_TEXTS_IDX`"/>
+ <element not-null="false" unique="false" type="text">
+ <column not-null="false" unique="false" name="`TEXTS`" length="10000"/>
+ </element>
+ </list>
</class>
<class name="org.eclipse.emf.teneo.hibernate.auditing.model.teneoauditing.impl.TeneoAuditEntryImpl" entity-name="TeneoAuditEntry" abstract="false" lazy="false" discriminator-value="TeneoAuditEntry" table="`TENEOAUDITENTRY`">
<meta attribute="eclassName" inherit="false">TeneoAuditEntry</meta>
@@ -115,15 +124,20 @@
<property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
<column not-null="false" unique="false" name="`NAME`"/>
</property>
- <property name="address" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <property name="address" lazy="false" insert="true" update="true" not-null="false" unique="false" type="text">
<column not-null="false" unique="false" name="`ADDRESS`"/>
</property>
- <array name="photo" table="`PERSONAUDITING_PHOTOAUDITING`" cascade="all">
+ <property name="photo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="binary">
+ <column not-null="false" unique="false" name="`PHOTO`" length="1000000"/>
+ </property>
+ <list name="texts" table="`PERSONAUDITING_TEXTSAUDITING`" lazy="true" cascade="all">
<key update="true">
- <column name="`PERSONAUDITING_PHOTO_E_ID`" unique="false"/>
+ <column name="`PERSONAUDITING_TEXTS_E_ID`" unique="false"/>
</key>
- <list-index column="`PERSONAUDITING_PHOTO_IDX`"/>
- <element type="byte"/>
- </array>
+ <list-index column="`PERSONAUDITING_TEXTS_IDX`"/>
+ <element not-null="false" unique="false" type="text">
+ <column not-null="false" unique="false" name="`TEXTS`" length="10000"/>
+ </element>
+ </list>
</subclass>
</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/AllTests.java b/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/AllTests.java
index 8b9b4f9..d2b1abb 100755
--- a/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/AllTests.java
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/src/org/eclipse/emf/teneo/hibernate/test/emf/annotations/AllTests.java
@@ -61,7 +61,6 @@ public class AllTests {
TestSuite suite = new MultiCfgTestSuite(
"Test for org.eclipse.emf.teneo.hibernate.test.emf.annotations", HibernateTestbed
.instance().getConfigurations());
- // checked
suite.addTestSuite(IdAction.class);
suite.addTestSuite(UserTypeAction.class);
suite.addTestSuite(ExternalAction.class);
diff --git a/tests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/LobPackage.java b/tests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/LobPackage.java
index b769101..07116eb 100755
--- a/tests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/LobPackage.java
+++ b/tests/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/LobPackage.java
@@ -105,13 +105,22 @@ public interface LobPackage extends EPackage {
int PERSON__PHOTO = 3;
/**
+ * The feature id for the '<em><b>Texts</b></em>' attribute list.
+ * <!-- begin-user