Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--examples/org.eclipse.emf.teneo.samples/build.properties5
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/com/example/car/impl/package.jdo122
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/rental/impl/package.jdo90
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/basic/impl/package.jdo19
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/cascadenotall/impl/package.jdo73
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/column/impl/package.jdo27
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/compositeid/impl/package.jdo43
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/duplicates/impl/package.jdo37
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/edatatypeColumn/impl/package.jdo27
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/id/impl/package.jdo70
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/inheritancemapping/impl/package.jdo151
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lazy/impl/package.jdo73
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/impl/package.jdo23
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/manytomany/impl/package.jdo58
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/mappedsuperclass/impl/package.jdo39
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/nmset/impl/package.jdo39
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/secondarytable/impl/package.jdo27
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/set/impl/package.jdo64
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/toone/impl/package.jdo65
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/uniqueconstraints/impl/package.jdo43
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachelist/impl/package.jdo56
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachfeaturemap/impl/package.jdo69
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachtest/impl/package.jdo53
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/elist/featuremap/impl/package.jdo107
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relation1to1/impl/package.jdo132
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relation1ton/impl/package.jdo176
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relationntom/impl/package.jdo84
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/accounting/impl/package.jdo224
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/catalog/impl/package.jdo105
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/epo2/impl/package.jdo155
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/forum/impl/package.jdo105
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/inv/impl/package.jdo58
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/library/impl/package.jdo79
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/play/impl/package.jdo201
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/product/impl/package.jdo71
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/schemaprimerpo/impl/package.jdo69
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/schoollibrary/library/impl/package.jdo99
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/sunBooks/impl/package.jdo95
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/anytype/impl/package.jdo108
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/attributes/impl/package.jdo40
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/duration/impl/package.jdo26
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/ecoreattrs/impl/package.jdo113
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/emap/impl/package.jdo112
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/extension/impl/package.jdo104
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/groupall/impl/package.jdo146
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/list/impl/package.jdo33
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/listunion/impl/package.jdo65
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/mixed/impl/package.jdo55
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/nestedgroup/impl/package.jdo79
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/qname/impl/package.jdo25
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/restriction/impl/package.jdo29
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/simplefeaturemap/impl/package.jdo53
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/simpletypes/impl/package.jdo182
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/substitution/impl/package.jdo130
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/substitutionzvon/impl/package.jdo93
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/abstractsuper/impl/package.jdo126
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/bagduplicate/impl/package.jdo33
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/enumtest/impl/package.jdo19
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/generaltest/impl/package.jdo77
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/inheritance/impl/package.jdo65
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/interfacetrue/impl/package.jdo19
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/nav/impl/package.jdo179
-rw-r--r--examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/simplenm/impl/package.jdo39
63 files changed, 4979 insertions, 4 deletions
diff --git a/examples/org.eclipse.emf.teneo.samples/build.properties b/examples/org.eclipse.emf.teneo.samples/build.properties
index 48cb9baac..2ca76fded 100644
--- a/examples/org.eclipse.emf.teneo.samples/build.properties
+++ b/examples/org.eclipse.emf.teneo.samples/build.properties
@@ -10,12 +10,9 @@ bin.includes = plugin.properties,\
copyright.txt,\
about.html,\
plugin.xml,\
- src/org/eclipse/emf/teneo/samples/emf/sample/play/data/,\
- src/org/eclipse/emf/teneo/samples/emf/sample/accounting/import.xmi,\
jdofiles/,\
log4j.properties,\
- src/org/eclipse/emf/teneo/test.hbm.xml,\
- src/org/eclipse/emf/teneo/samples/emf/sample/library/library.ecore
+ src/
src.includes = about.html,\
epl-v10.html,\
copyright.txt,\
diff --git a/examples/org.eclipse.emf.teneo.samples/src/com/example/car/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/com/example/car/impl/package.jdo
new file mode 100644
index 000000000..7bfd6cdfe
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/com/example/car/impl/package.jdo
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="com.example.car.impl">
+ <class name="com.example.car.impl.CarFrameImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="carframe" identity-type="datastore">
+ <implements name="com.example.car.CarFrame"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="CarFrame"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="carWheel" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="com.example.car.impl.CarWheelImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="carframe_carwheel_e_id" allows-null="true"/>
+ </element>
+ <order column="CARFRAME_CARWHEEL_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="carframe_carwheel"/>
+ </field>
+ <field name="carLinkRef" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="carframe_carlinkref"/>
+ <column name="carlink_carlinkref_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="com.example.car.impl.CarLinkImpl"/>
+ </field>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="com.example.car.impl.CarLinkImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="carlink" identity-type="application">
+ <implements name="com.example.car.CarLink"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="CarLink"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="carLinkId" persistence-modifier="persistent" primary-key="true"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="com.example.car.impl.CarsListImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="carslist" identity-type="datastore">
+ <implements name="com.example.car.CarsList"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="CarsList"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="carType" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="com.example.car.impl.CarTypeImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="carslist_cartype_e_id" allows-null="true"/>
+ </element>
+ <order column="CARSLIST_CARTYPE_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="carslist_cartype"/>
+ </field>
+ <field name="carLink" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="com.example.car.impl.CarLinkImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="carslist_carlink_e_id" allows-null="true"/>
+ </element>
+ <order column="CARSLIST_CARLINK_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="carslist_carlink"/>
+ </field>
+ </class>
+ <class name="com.example.car.impl.CarTireImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="cartire" identity-type="application">
+ <implements name="com.example.car.CarTire"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="CarTire"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ </class>
+ <class name="com.example.car.impl.CarTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="cartype" identity-type="application">
+ <implements name="com.example.car.CarType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="CarType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="carFrame" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="com.example.car.impl.CarFrameImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="cartype_carframe_e_id" allows-null="true"/>
+ </element>
+ <order column="CARTYPE_CARFRAME_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="cartype_carframe"/>
+ </field>
+ <field name="carID" persistence-modifier="persistent" primary-key="true"/>
+ </class>
+ <class name="com.example.car.impl.CarWheelImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="carwheel" identity-type="datastore">
+ <implements name="com.example.car.CarWheel"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="CarWheel"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="carTire" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="com.example.car.impl.CarTireImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="carwheel_cartire_e_id" allows-null="true"/>
+ </element>
+ <order column="CARWHEEL_CARTIRE_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="carwheel_cartire"/>
+ </field>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/rental/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/rental/impl/package.jdo
new file mode 100644
index 000000000..e09e8bc13
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/rental/impl/package.jdo
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.rental.impl">
+ <class name="org.eclipse.emf.teneo.rental.impl.RentalBicycleImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.rental.RentalBicycle"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="RentalBicycle"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="type" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="typeESet" persistence-modifier="persistent"/>
+ <field name="manufacturer" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="rentalbicycle_manufacturer"/>
+ <column name="manufacturer_manufacturer_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.rental.impl.ManufacturerImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.rental.impl.CurrencyImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="currency" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.rental.Currency"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Currency"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="code" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.rental.impl.RentalCarImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.rental.RentalCar"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="RentalCar"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="size" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="sizeESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.rental.impl.RentalContractImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="rentalcontract" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.rental.RentalContract"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="RentalContract"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="rentToBusinessPartner" persistence-modifier="persistent" null-value="exception"/>
+ <field name="startDate" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="endDate" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="endDateESet" persistence-modifier="persistent"/>
+ <field name="cost" persistence-modifier="persistent" null-value="exception"/>
+ <field name="costESet" persistence-modifier="persistent"/>
+ <field name="rentalUnits" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.rental.impl.RentalUnitImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="rentalcontract_rentalunits_e_id" allows-null="true"/>
+ </element>
+ <order column="RENTALCONTRACT_RENTALUNITS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="rentalcontract_rentalunits"/>
+ </field>
+ <field name="currency" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="rentalcontract_currency"/>
+ <column name="currency_currency_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.rental.impl.CurrencyImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.rental.impl.RentalUnitImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="rentalunit" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.rental.RentalUnit"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="RentalUnit"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="description" persistence-modifier="persistent" primary-key="true"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.rental.impl.ManufacturerImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="manufacturer" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.rental.Manufacturer"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Manufacturer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="code" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/basic/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/basic/impl/package.jdo
new file mode 100644
index 000000000..a46935a5f
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/basic/impl/package.jdo
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.basic.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.basic.impl.BasicImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="basic" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.basic.Basic"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Basic"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="myOptionalBasic" persistence-modifier="persistent" null-value="none"/>
+ <field name="myVersion" persistence-modifier="none"/>
+ <field name="myTransient" persistence-modifier="none"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/cascadenotall/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/cascadenotall/impl/package.jdo
new file mode 100644
index 000000000..dad09845b
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/cascadenotall/impl/package.jdo
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.cascadenotall.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.cascadenotall.impl.BookImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="book" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.cascadenotall.Book"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Book"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="exception"/>
+ <field name="pages" persistence-modifier="persistent" null-value="exception"/>
+ <field name="pagesESet" persistence-modifier="persistent"/>
+ <field name="category" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="categoryESet" persistence-modifier="persistent"/>
+ <field name="author" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="book_author"/>
+ <column name="book_author_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.annotations.cascadenotall.impl.WriterImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.cascadenotall.impl.LibraryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="library" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.cascadenotall.Library"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Library"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="writers" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.cascadenotall.impl.WriterImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="library_writers_e_id" allows-null="true"/>
+ </element>
+ <order column="LIBRARY_WRITERS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="library_writers"/>
+ </field>
+ <field name="books" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.cascadenotall.impl.BookImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="library_books_e_id" allows-null="true"/>
+ </element>
+ <order column="LIBRARY_BOOKS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="library_books"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.cascadenotall.impl.WriterImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="writer" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.cascadenotall.Writer"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Writer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="books" persistence-modifier="persistent" mapped-by="author" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.cascadenotall.impl.BookImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="WRITER_BOOKS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/column/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/column/impl/package.jdo
new file mode 100644
index 000000000..2948821ca
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/column/impl/package.jdo
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.column.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.column.impl.BookImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="mybooktable" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.column.Book"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Book"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="none">
+ <column name="titel" allows-null="true" length="25"/>
+ <unique>
+ <column name="titel" allows-null="true" length="25"/>
+ </unique>
+ </field>
+ <field name="pages" persistence-modifier="none"/>
+ <field name="weight" persistence-modifier="persistent" null-value="none" embedded="true">
+ <column name="gewicht" allows-null="true" length="5" scale="2"/>
+ </field>
+ <field name="author" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/compositeid/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/compositeid/impl/package.jdo
new file mode 100644
index 000000000..39c061215
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/compositeid/impl/package.jdo
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.compositeid.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.compositeid.impl.ParentImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.compositeid.Parent"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="Parent"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="children" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.compositeid.impl.ChildImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="myParentFirstName" allows-null="true"/>
+ <column name="myParentLastName" allows-null="true"/>
+ </element>
+ <order column="PARENT_CHILDREN_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="parent_children"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.compositeid.impl.ChildImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.compositeid.Child"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="Child"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.compositeid.impl.PersonImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" objectid-class="org.eclipse.emf.teneo.samples.emf.annotations.compositeid.PersonID" table="person" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.compositeid.Person"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Person"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="firstName" persistence-modifier="persistent" primary-key="true"/>
+ <field name="lastName" persistence-modifier="persistent" primary-key="true"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/duplicates/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/duplicates/impl/package.jdo
new file mode 100644
index 000000000..de19efa4d
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/duplicates/impl/package.jdo
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.duplicates.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.duplicates.impl.ChildItemImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="childitem" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.duplicates.ChildItem"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ChildItem"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.duplicates.impl.ItemImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="item" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.duplicates.Item"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Item"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="childItem" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.duplicates.impl.ChildItemImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="item_childitem_e_id" allows-null="true"/>
+ </element>
+ <order column="ITEM_CHILDITEM_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="item_childitem"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/edatatypeColumn/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/edatatypeColumn/impl/package.jdo
new file mode 100644
index 000000000..ac64b4d2a
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/edatatypeColumn/impl/package.jdo
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.edatatypeColumn.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.edatatypeColumn.impl.BookImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="mybooktable" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.edatatypeColumn.Book"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Book"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="none">
+ <column name="titel" allows-null="true" length="25"/>
+ <unique>
+ <column name="titel" allows-null="true" length="25"/>
+ </unique>
+ </field>
+ <field name="pages" persistence-modifier="none"/>
+ <field name="weight" persistence-modifier="persistent" null-value="none" embedded="true">
+ <column name="gewicht" allows-null="true" length="5" scale="2"/>
+ </field>
+ <field name="author" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/id/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/id/impl/package.jdo
new file mode 100644
index 000000000..e37801afd
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/id/impl/package.jdo
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.id.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.id.impl.IdentityIDImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="identityid" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.id.IdentityID"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="IdentityID"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="myid" persistence-modifier="persistent" primary-key="true" value-strategy="identity" indexed="true"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.id.impl.SimpleIDImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="simpleid" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.id.SimpleID"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SimpleID"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="autoID" persistence-modifier="persistent" primary-key="true" value-strategy="auto" indexed="true">
+ <column name="AUTOD" allows-null="false"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.id.impl.TableIDImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="tableid" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.id.TableID"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TableID"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="myid" persistence-modifier="persistent" primary-key="true" value-strategy="increment" indexed="true"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.id.impl.TableGeneratorIDImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="tablegeneratorid" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.id.TableGeneratorID"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TableGeneratorID"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="myid" persistence-modifier="persistent" primary-key="true" value-strategy="increment" indexed="true" strategy="increment" sequence-table-name="TGEN" sequence-nextval-column-name="VAL_COL"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.id.impl.AutoIDImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="autoid" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.id.AutoID"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="AutoID"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="autoID" persistence-modifier="persistent" primary-key="true" value-strategy="auto" indexed="true"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.id.impl.OtherTableGeneratorIDImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="othertablegeneratorid" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.id.OtherTableGeneratorID"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="OtherTableGeneratorID"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="myid" persistence-modifier="persistent" primary-key="true" value-strategy="increment" indexed="true" strategy="increment" sequence-table-name="OTHERTGEN" sequence-nextval-column-name="VAL_COL"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/inheritancemapping/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/inheritancemapping/impl/package.jdo
new file mode 100644
index 000000000..141539810
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/inheritancemapping/impl/package.jdo
@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.AddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="address" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.Address"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table"/>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ <field name="street" persistence-modifier="persistent" null-value="exception"/>
+ <field name="city" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.ContentListImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="contentlist" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.ContentList"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ContentList"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ <field name="address" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.AddressImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="contentlist_address_name" allows-null="true"/>
+ </element>
+ <order column="CONTENTLIST_ADDRESS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="contentlist_address"/>
+ </field>
+ <field name="price" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.PriceImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="contentlist_price_name" allows-null="true"/>
+ </element>
+ <order column="CONTENTLIST_PRICE_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="contentlist_price"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.DistrictUKAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="districtukaddress" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.DistrictUKAddress"/>
+ <inheritance strategy="new-table"/>
+ <version strategy="version-number" column="e_version"/>
+ <field name="district" persistence-modifier="persistent" null-value="exception"/>
+ <field name="districtESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.InternationalPriceImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.InternationalPrice"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="myInternationalPrice"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="currency" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.PriceImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="myprice" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.Price"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="DISCRIMINATOR" strategy="value-map" value="myPrice"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="value" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.UKAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="ukaddress" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.UKAddress"/>
+ <inheritance strategy="new-table"/>
+ <version strategy="version-number" column="e_version"/>
+ <field name="postcode" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.USAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="UNITEDSTATESADDRESS" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.USAddress"/>
+ <inheritance strategy="new-table"/>
+ <version strategy="version-number" column="e_version"/>
+ <field name="state" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="stateESet" persistence-modifier="persistent"/>
+ <field name="zip" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="zipESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.CustomerImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="customer" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.Customer"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Customer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.SpecificCustomerImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.SpecificCustomer"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="SpecificCustomer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="specificName" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.UKAddressListImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="ukaddresslist" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.UKAddressList"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="UKAddressList"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="address" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.UKAddressImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="ukaddresslist_address_e_id" allows-null="true"/>
+ </element>
+ <order column="UKADDRESSLIST_ADDRESS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="ukaddresslist_address"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.ParentOneImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="parentone" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.ParentOne"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ParentOne"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.ParentTwoImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="parenttwo" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.ParentTwo"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ParentTwo"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.impl.ChildOneImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.inheritancemapping.ChildOne"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="ChildOne"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lazy/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lazy/impl/package.jdo
new file mode 100644
index 000000000..8768916ab
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lazy/impl/package.jdo
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.lazy.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.lazy.impl.BookImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="book" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.lazy.Book"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Book"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="exception"/>
+ <field name="pages" persistence-modifier="persistent" null-value="exception"/>
+ <field name="pagesESet" persistence-modifier="persistent"/>
+ <field name="category" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="categoryESet" persistence-modifier="persistent"/>
+ <field name="author" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="book_author"/>
+ <column name="book_author_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.annotations.lazy.impl.WriterImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.lazy.impl.LibraryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="library" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.lazy.Library"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Library"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="writers" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.lazy.impl.WriterImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="false"/>
+ </collection>
+ <element>
+ <column name="library_writers_e_id" allows-null="true"/>
+ </element>
+ <order column="LIBRARY_WRITERS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="library_writers"/>
+ </field>
+ <field name="books" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.lazy.impl.BookImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="false"/>
+ </collection>
+ <element>
+ <column name="library_books_e_id" allows-null="true"/>
+ </element>
+ <order column="LIBRARY_BOOKS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="library_books"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.lazy.impl.WriterImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="writer" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.lazy.Writer"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Writer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="books" persistence-modifier="persistent" mapped-by="author" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.lazy.impl.BookImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="WRITER_BOOKS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/impl/package.jdo
new file mode 100644
index 000000000..183701369
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/lob/impl/package.jdo
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.lob.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.lob.impl.PersonImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="person" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.lob.Person"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Person"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="id" persistence-modifier="persistent" null-value="exception"/>
+ <field name="idESet" persistence-modifier="persistent"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="address" persistence-modifier="persistent" null-value="none"/>
+ <field name="photo" persistence-modifier="persistent" embedded="true">
+ <array embedded-element="true"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/manytomany/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/manytomany/impl/package.jdo
new file mode 100644
index 000000000..49b9f53b4
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/manytomany/impl/package.jdo
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.manytomany.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.manytomany.impl.CntrImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="cntr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.manytomany.Cntr"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Cntr"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="rght" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.manytomany.impl.RghtImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="false"/>
+ </collection>
+ <join/>
+ </field>
+ <field name="lft" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.manytomany.impl.LftImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="false"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.manytomany.impl.LftImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="lft" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.manytomany.Lft"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Lft"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="cntr" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.manytomany.impl.CntrImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.manytomany.impl.RghtImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="rght" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.manytomany.Rght"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Rght"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="cntr" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.manytomany.impl.CntrImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/mappedsuperclass/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/mappedsuperclass/impl/package.jdo
new file mode 100644
index 000000000..a781e3bc3
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/mappedsuperclass/impl/package.jdo
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.mappedsuperclass.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.mappedsuperclass.impl.AddIDDocumentImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="addiddocument" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.mappedsuperclass.AddIDDocument"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="AddIDDocument"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.mappedsuperclass.impl.DocumentImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="document" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.mappedsuperclass.Document"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="subclass-table"/>
+ <version strategy="version-number" column="e_version"/>
+ <field name="myGenericInfo" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.mappedsuperclass.impl.ParentDocumentImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="parentdocument" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.mappedsuperclass.ParentDocument"/>
+ <inheritance strategy="subclass-table"/>
+ <version strategy="version-number" column="e_version"/>
+ <field name="myName" persistence-modifier="persistent" null-value="exception">
+ <column name="XXX" allows-null="false"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.mappedsuperclass.impl.SpecificDocumentImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="specificdocument" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.mappedsuperclass.SpecificDocument"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SpecificDocument"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="mySpecificInfo" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/nmset/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/nmset/impl/package.jdo
new file mode 100644
index 000000000..ead6c3950
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/nmset/impl/package.jdo
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.nmset.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.nmset.impl.MyItemImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="myitem" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.nmset.MyItem"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="MyItem"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="yourItem" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.nmset.impl.YourItemImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.nmset.impl.YourItemImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="youritem" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.nmset.YourItem"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="YourItem"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="myItem" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.nmset.impl.MyItemImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/secondarytable/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/secondarytable/impl/package.jdo
new file mode 100644
index 000000000..6aa25c2b9
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/secondarytable/impl/package.jdo
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.secondarytable.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.secondarytable.impl.PrinterImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="printer" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.secondarytable.Printer"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Printer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <join table="THETONER">
+ <column name="PRINTER_ID"/>
+ </join>
+ <field name="make" persistence-modifier="persistent" null-value="exception"/>
+ <field name="model" persistence-modifier="persistent" null-value="exception"/>
+ <field name="tonerMake" persistence-modifier="persistent" table="THETONER" null-value="none">
+ <column name="tonermake" allows-null="true"/>
+ </field>
+ <field name="tonerModel" persistence-modifier="persistent" table="THETONER" null-value="none">
+ <column name="tonermodel" allows-null="true"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/set/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/set/impl/package.jdo
new file mode 100644
index 000000000..6630c90e1
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/set/impl/package.jdo
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.set.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.set.impl.ContainedItemImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="TESTSET_CONTAINEDITEM" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.set.ContainedItem"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="DTYPE" strategy="value-map" value="testSet.ContainedItem"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.set.impl.ItemImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="TESTSET_ITEM" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.set.Item"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="DTYPE" strategy="value-map" value="testSet.Item"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="itemList" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="TESTSET_ITEM_ITEMLIST"/>
+ <column name="ITEM_ITEMLIST_E_ID" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.annotations.set.impl.ItemListImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.set.impl.ItemListImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="TESTSET_ITEMLIST" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.set.ItemList"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="DTYPE" strategy="value-map" value="testSet.ItemList"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="containedItem" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.set.impl.ContainedItemImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="ITEMLIST_CONTAINEDITEM_E_ID" allows-null="true"/>
+ </element>
+ <foreign-key delete-action="cascade" update-action="cascade" name="TESTSET_ITEMLIST_CONTAINEDITEM"/>
+ </field>
+ <field name="item" persistence-modifier="persistent" mapped-by="itemList" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.set.impl.ItemImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="ITEMLIST_ITEM_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="joinedItem" persistence-modifier="persistent" table="TESTSET_ITEMLIST_TESTSET_ITEM" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.annotations.set.impl.ItemImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/toone/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/toone/impl/package.jdo
new file mode 100644
index 000000000..2f7fd8a51
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/toone/impl/package.jdo
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.toone.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.toone.impl.AddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="address" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.toone.Address"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Address"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="city" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.toone.impl.ArmImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="arm" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.toone.Arm"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Arm"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="length" persistence-modifier="persistent" null-value="exception"/>
+ <field name="lengthESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.toone.impl.HeadImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="head" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.toone.Head"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Head"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="hairColor" persistence-modifier="persistent" null-value="exception"/>
+ <field name="person" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.annotations.toone.impl.PersonImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.toone.impl.PersonImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="person" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.toone.Person"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Person"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="address" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="person_address"/>
+ <column name="address_address_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.annotations.toone.impl.AddressImpl"/>
+ </field>
+ <field name="head" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.annotations.toone.impl.HeadImpl"/>
+ </field>
+ <field name="leftArm" persistence-modifier="persistent" delete-action="restrict" null-value="exception">
+ <foreign-key name="person_leftarm"/>
+ <column name="arm_leftarm_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.annotations.toone.impl.ArmImpl"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/uniqueconstraints/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/uniqueconstraints/impl/package.jdo
new file mode 100644
index 000000000..2d894dfd7
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/annotations/uniqueconstraints/impl/package.jdo
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.annotations.uniqueconstraints.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.uniqueconstraints.impl.ItemImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="MYITEMTABLE" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.uniqueconstraints.Item"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Item"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <unique>
+ <column name="MYSTR"/>
+ <column name="MYINT"/>
+ <column name="MYPROJECT"/>
+ </unique>
+ <field name="name" persistence-modifier="persistent" null-value="none">
+ <column name="MYSTR" allows-null="true"/>
+ </field>
+ <field name="project" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="item_project"/>
+ <column name="MYPROJECT" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.annotations.uniqueconstraints.impl.ProjectImpl"/>
+ </field>
+ <field name="age" persistence-modifier="persistent" null-value="none">
+ <column name="MYINT" allows-null="true"/>
+ </field>
+ <field name="ageESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.annotations.uniqueconstraints.impl.ProjectImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="project" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.annotations.uniqueconstraints.Project"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Project"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachelist/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachelist/impl/package.jdo
new file mode 100644
index 000000000..7204bc74b
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachelist/impl/package.jdo
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.detach.detachelist.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.detach.detachelist.impl.ContactsImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="contacts" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.detach.detachelist.Contacts"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Contacts"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="persons" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.detach.detachelist.impl.PersonImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="contacts_persons_e_id" allows-null="true"/>
+ </element>
+ <order column="CONTACTS_PERSONS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="contacts_persons"/>
+ </field>
+ <field name="containedPersons" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.detach.detachelist.impl.PersonImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="contacts_containedpersons_e_id" allows-null="true"/>
+ </element>
+ <order column="CONTACTS_CONTAINEDPERSONS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="contacts_containedpersons"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.detach.detachelist.impl.PersonImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="person" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.detach.detachelist.Person"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Person"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="children" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.detach.detachelist.impl.PersonImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="person_children_e_id" allows-null="true"/>
+ </element>
+ <order column="PERSON_CHILDREN_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="person_children"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachfeaturemap/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachfeaturemap/impl/package.jdo
new file mode 100644
index 000000000..39824c238
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachfeaturemap/impl/package.jdo
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.detach.detachfeaturemap.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.detach.detachfeaturemap.impl.ContactsImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="contacts" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.detach.detachfeaturemap.Contacts"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Contacts"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="persons" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.detach.detachfeaturemap.impl.PersonImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="contacts_persons_e_id" allows-null="true"/>
+ </element>
+ <order column="CONTACTS_PERSONS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="contacts_persons"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.detach.detachfeaturemap.impl.PersonImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="person" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.detach.detachfeaturemap.Person"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Person"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="phones" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true" embedded="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ </embedded>
+ </element>
+ <order column="PERSON_PHONES_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.detach.detachfeaturemap.impl.SpecialPersonImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.detach.detachfeaturemap.SpecialPerson"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="SpecialPerson"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachtest/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachtest/impl/package.jdo
new file mode 100644
index 000000000..7ee44e33e
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/detach/detachtest/impl/package.jdo
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.detach.detachtest.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.detach.detachtest.impl.TestAImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="testa" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.detach.detachtest.TestA"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TestA"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="code" persistence-modifier="persistent" null-value="exception"/>
+ <field name="testB" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="testa_testb"/>
+ <column name="testb_testb_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.detach.detachtest.impl.TestBImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.detach.detachtest.impl.TestBImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="testb" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.detach.detachtest.TestB"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TestB"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="code" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.detach.detachtest.impl.TestCImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="testc" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.detach.detachtest.TestC"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TestC"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="code" persistence-modifier="persistent" null-value="exception"/>
+ <field name="myDate" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="testB" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.detach.detachtest.impl.TestBImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="testc_testb_e_id" allows-null="true"/>
+ </element>
+ <order column="TESTC_TESTB_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="testc_testb"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/elist/featuremap/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/elist/featuremap/impl/package.jdo
new file mode 100644
index 000000000..1451cd831
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/elist/featuremap/impl/package.jdo
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl.PriceByQuantityTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="pricebyquantitytype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.PriceByQuantityType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="PriceByQuantityType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="price" persistence-modifier="persistent" null-value="exception"/>
+ <field name="priceESet" persistence-modifier="persistent"/>
+ <field name="quantity" persistence-modifier="persistent" null-value="exception"/>
+ <field name="quantityESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl.ProductTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="producttype" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.ProductType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ProductType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ <field name="group" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl.TranslatedDescriptionTypeImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="translatedDescription"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true" embedded="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ </embedded>
+ </element>
+ <order column="PRODUCTTYPE_GROUP_IDX"/>
+ </field>
+ <field name="productClassification" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="productClassificationESet" persistence-modifier="persistent"/>
+ <field name="group1" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="java.lang.Double"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="simplePrice"/>
+ </field>
+ <field name="localReferenceValue">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl.SupplierPriceTypeImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="priceFromSupplier"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl.PriceByQuantityTypeImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="priceByQuantity"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="PRODUCTTYPE_GROUP1_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl.SupplierPriceTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="supplierpricetype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.SupplierPriceType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SupplierPriceType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="price" persistence-modifier="persistent" null-value="exception"/>
+ <field name="priceESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.impl.TranslatedDescriptionTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="translateddescriptiontype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.elist.featuremap.TranslatedDescriptionType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TranslatedDescriptionType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="description" persistence-modifier="persistent" null-value="exception"/>
+ <field name="language" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relation1to1/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relation1to1/impl/package.jdo
new file mode 100644
index 000000000..50145cf1f
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relation1to1/impl/package.jdo
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.ContainedChildNRImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="containedchildnr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.ContainedChildNR"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ContainedChildNR"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.ContainedChildRImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="containedchildr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.ContainedChildR"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ContainedChildR"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.MainImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="main" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.Main"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Main"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="nameESet" persistence-modifier="persistent"/>
+ <field name="containedonewayrequired" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="main_containedonewayrequired"/>
+ <column name="containedchildr_containedonewayrequired_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.ContainedChildRImpl"/>
+ </field>
+ <field name="containedoneWaynotrequired" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="main_containedonewaynotrequired"/>
+ <column name="containedchildnr_containedonewaynotrequired_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.ContainedChildNRImpl"/>
+ </field>
+ <field name="notcontainedonewayrequired" persistence-modifier="persistent" delete-action="restrict" null-value="exception">
+ <foreign-key name="main_notcontainedonewayrequired"/>
+ <column name="notcontainedchildr_notcontainedonewayrequired_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.NotContainedChildRImpl"/>
+ </field>
+ <field name="notcontainedonewaynotrequired" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="main_notcontainedonewaynotrequired"/>
+ <column name="notcontainedchildnr_notcontainedonewaynotrequired_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.NotContainedChildNRImpl"/>
+ </field>
+ <field name="notcontainedtwowaynotrequired" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.NotContainedChildNRTImpl"/>
+ </field>
+ <field name="notcontainedtwowayrequirednr" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.NotContainedChildRTNRImpl"/>
+ </field>
+ <field name="notcontainedtwowaynotrequirednr" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.NotContainedChildNRTNRImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.NotContainedChildNRImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="notcontainedchildnr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.NotContainedChildNR"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="NotContainedChildNR"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.NotContainedChildNRTImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="notcontainedchildnrt" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.NotContainedChildNRT"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="NotContainedChildNRT"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="main" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.MainImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.NotContainedChildNRTNRImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="notcontainedchildnrtnr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.NotContainedChildNRTNR"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="NotContainedChildNRTNR"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="main" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.MainImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.NotContainedChildRImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="notcontainedchildr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.NotContainedChildR"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="NotContainedChildR"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.NotContainedChildRTNRImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="notcontainedchildrtnr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.NotContainedChildRTNR"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="NotContainedChildRTNR"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="main" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1to1.impl.MainImpl"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relation1ton/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relation1ton/impl/package.jdo
new file mode 100644
index 000000000..7dedba210
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relation1ton/impl/package.jdo
@@ -0,0 +1,176 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.MainImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="main" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.Main"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Main"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="nameESet" persistence-modifier="persistent"/>
+ <field name="onecr" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.OneCRImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="main_onecr_e_id" allows-null="true"/>
+ </element>
+ <order column="MAIN_ONECR_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="main_onecr"/>
+ </field>
+ <field name="onecn" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.OneCNImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="main_onecn_e_id" allows-null="true"/>
+ </element>
+ <order column="MAIN_ONECN_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="main_onecn"/>
+ </field>
+ <field name="onenr" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.OneNRImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="main_onenr_e_id" allows-null="true"/>
+ </element>
+ <order column="MAIN_ONENR_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="main_onenr"/>
+ </field>
+ <field name="onenn" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.OneNNImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="main_onenn_e_id" allows-null="true"/>
+ </element>
+ <order column="MAIN_ONENN_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="main_onenn"/>
+ </field>
+ <field name="twocr" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.TwoCRImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="MAIN_TWOCR_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="main_twocr"/>
+ </field>
+ <field name="twocn" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.TwoCNImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="MAIN_TWOCN_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="main_twocn"/>
+ </field>
+ <field name="twonr" persistence-modifier="persistent" mapped-by="main" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.TwoNRImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="MAIN_TWONR_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="twonn" persistence-modifier="persistent" mapped-by="main" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.TwoNNImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="MAIN_TWONN_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.OneCNImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="onecn" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.OneCN"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="OneCN"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.OneCRImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="onecr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.OneCR"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="OneCR"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.OneNNImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="onenn" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.OneNN"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="OneNN"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.OneNRImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="onenr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.OneNR"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="OneNR"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.TwoCNImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="twocn" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.TwoCN"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TwoCN"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.TwoCRImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="twocr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.TwoCR"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TwoCR"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.TwoNNImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="twonn" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.TwoNN"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TwoNN"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="main" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="twonn_main"/>
+ <column name="twonn_main_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.MainImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.TwoNRImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="twonr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.TwoNR"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TwoNR"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="main" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="twonr_main"/>
+ <column name="twonr_main_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.relation.relation1ton.impl.MainImpl"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relationntom/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relationntom/impl/package.jdo
new file mode 100644
index 000000000..912aa09b6
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/relation/relationntom/impl/package.jdo
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.relation.relationntom.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relationntom.impl.MainImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="main" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relationntom.Main"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Main"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="nameESet" persistence-modifier="persistent"/>
+ <field name="multinr" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relationntom.impl.MultiNRImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ <field name="multirn" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relationntom.impl.MultiRNImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ <field name="multinn" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relationntom.impl.MultiNNImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relationntom.impl.MultiNNImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="multinn" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relationntom.MultiNN"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="MultiNN"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="main" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relationntom.impl.MainImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relationntom.impl.MultiNRImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="multinr" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relationntom.MultiNR"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="MultiNR"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="main" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relationntom.impl.MainImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.relation.relationntom.impl.MultiRNImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="multirn" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.relation.relationntom.MultiRN"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="MultiRN"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="main" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.relation.relationntom.impl.MainImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/accounting/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/accounting/impl/package.jdo
new file mode 100644
index 000000000..e4d15a23d
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/accounting/impl/package.jdo
@@ -0,0 +1,224 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.AccountImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="account" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.accounting.Account"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Account"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.AccountGroupImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="accountgroup" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.accounting.AccountGroup"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="AccountGroup"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="account" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.AccountImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="accountgroup_account_e_id" allows-null="true"/>
+ </element>
+ <order column="ACCOUNTGROUP_ACCOUNT_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="accountgroup_account"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.AccountingImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="accounting" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.accounting.Accounting"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Accounting"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="nameESet" persistence-modifier="persistent"/>
+ <field name="accountGroup" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.AccountGroupImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="accounting_accountgroup_e_id" allows-null="true"/>
+ </element>
+ <order column="ACCOUNTING_ACCOUNTGROUP_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="accounting_accountgroup"/>
+ </field>
+ <field name="vat" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.VatImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="accounting_vat_e_id" allows-null="true"/>
+ </element>
+ <order column="ACCOUNTING_VAT_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="accounting_vat"/>
+ </field>
+ <field name="vatAccount" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="accounting_vataccount"/>
+ <column name="balanceaccount_vataccount_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.BalanceAccountImpl"/>
+ </field>
+ <field name="report" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="accounting_report"/>
+ <column name="report_report_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.ReportImpl"/>
+ </field>
+ <field name="journalGroup" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.JournalGroupImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="accounting_journalgroup_e_id" allows-null="true"/>
+ </element>
+ <order column="ACCOUNTING_JOURNALGROUP_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="accounting_journalgroup"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.BalanceAccountImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.accounting.BalanceAccount"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="BalanceAccount"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="report" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.ReportGroupImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.JournalGroupImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="journalgroup" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.accounting.JournalGroup"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="JournalGroup"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="journalGroups" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.JournalGroupImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="journalgroup_journalgroups_e_id" allows-null="true"/>
+ </element>
+ <order column="JOURNALGROUP_JOURNALGROUPS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="journalgroup_journalgroups"/>
+ </field>
+ <field name="journalStatements" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.JournalStatementImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="journalgroup_journalstatements_e_id" allows-null="true"/>
+ </element>
+ <order column="JOURNALGROUP_JOURNALSTATEMENTS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="journalgroup_journalstatements"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.JournalStatementImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="journalstatement" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.accounting.JournalStatement"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="JournalStatement"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="description" persistence-modifier="persistent" null-value="exception"/>
+ <field name="date" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="amount" persistence-modifier="persistent" null-value="exception"/>
+ <field name="amountESet" persistence-modifier="persistent"/>
+ <field name="debitAccount" persistence-modifier="persistent" delete-action="restrict" null-value="exception">
+ <foreign-key name="journalstatement_debitaccount"/>
+ <column name="account_debitaccount_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.AccountImpl"/>
+ </field>
+ <field name="creditAccount" persistence-modifier="persistent" delete-action="restrict" null-value="exception">
+ <foreign-key name="journalstatement_creditaccount"/>
+ <column name="account_creditaccount_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.AccountImpl"/>
+ </field>
+ <field name="vat" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="journalstatement_vat"/>
+ <column name="vat_vat_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.VatImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.PLAccountImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.accounting.PLAccount"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="PLAccount"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.ReportImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="report" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.accounting.Report"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Report"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="debitReportGroup" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="report_debitreportgroup"/>
+ <column name="reportgroup_debitreportgroup_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.ReportGroupImpl"/>
+ </field>
+ <field name="creditReportGroup" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="report_creditreportgroup"/>
+ <column name="reportgroup_creditreportgroup_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.ReportGroupImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.ReportGroupImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="reportgroup" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.accounting.ReportGroup"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ReportGroup"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="reportGroup" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.ReportGroupImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="reportgroup_reportgroup_e_id" allows-null="true"/>
+ </element>
+ <order column="REPORTGROUP_REPORTGROUP_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="reportgroup_reportgroup"/>
+ </field>
+ <field name="account" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.BalanceAccountImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.accounting.impl.VatImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="vat" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.accounting.Vat"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Vat"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="rate" persistence-modifier="persistent" null-value="exception"/>
+ <field name="rateESet" persistence-modifier="persistent"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/catalog/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/catalog/impl/package.jdo
new file mode 100644
index 000000000..95abbb255
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/catalog/impl/package.jdo
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.CatalogTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="catalogtype" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.catalog.CatalogType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="CatalogType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ <field name="description" persistence-modifier="persistent" null-value="exception"/>
+ <field name="subCatalog" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.CatalogTypeImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="catalogtype_subcatalog_name" allows-null="true"/>
+ </element>
+ <order column="CATALOGTYPE_SUBCATALOG_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="catalogtype_subcatalog"/>
+ </field>
+ <field name="product" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.ProductTypeImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="catalogtype_product_name" allows-null="true"/>
+ </element>
+ <order column="CATALOGTYPE_PRODUCT_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="catalogtype_product"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.PriceTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="pricetype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.catalog.PriceType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="PriceType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="price" persistence-modifier="persistent" null-value="exception"/>
+ <field name="priceESet" persistence-modifier="persistent"/>
+ <field name="quantityTo" persistence-modifier="persistent" null-value="exception"/>
+ <field name="quantityToESet" persistence-modifier="persistent"/>
+ <field name="supplier" persistence-modifier="persistent" delete-action="restrict" null-value="exception">
+ <foreign-key name="pricetype_supplier"/>
+ <column name="suppliertype_supplier_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.SupplierTypeImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.ProductTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="producttype" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.catalog.ProductType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ProductType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="code" persistence-modifier="persistent" primary-key="true"/>
+ <field name="description" persistence-modifier="persistent" null-value="exception"/>
+ <field name="descriptionESet" persistence-modifier="persistent"/>
+ <field name="remark" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.StringTypeImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="producttype_remark_code" allows-null="true"/>
+ </element>
+ <order column="PRODUCTTYPE_REMARK_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="producttype_remark"/>
+ </field>
+ <field name="price" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="producttype_price"/>
+ <column name="pricetype_price_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.PriceTypeImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.StringTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="stringtype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.catalog.StringType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="StringType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="value" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.SupplierTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="suppliertype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.catalog.SupplierType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SupplierType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="noOfEmployees" persistence-modifier="persistent" null-value="exception"/>
+ <field name="noOfEmployeesESet" persistence-modifier="persistent"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/epo2/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/epo2/impl/package.jdo
new file mode 100644
index 000000000..3abab4cbf
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/epo2/impl/package.jdo
@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.ItemImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="item" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.epo2.Item"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Item"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="productName" persistence-modifier="persistent" null-value="none"/>
+ <field name="quantity" persistence-modifier="persistent" null-value="none"/>
+ <field name="usPrice" persistence-modifier="persistent" null-value="none"/>
+ <field name="comment" persistence-modifier="persistent" null-value="none"/>
+ <field name="shipDate" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="partNum" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.USAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.epo2.USAddress"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="USAddress"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="street" persistence-modifier="persistent" null-value="none"/>
+ <field name="city" persistence-modifier="persistent" null-value="none"/>
+ <field name="state" persistence-modifier="persistent" null-value="none"/>
+ <field name="zip" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.PurchaseOrderImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="purchaseorder" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.epo2.PurchaseOrder"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="PurchaseOrder"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="items" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.ItemImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="PURCHASEORDER_ITEMS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="purchaseorder_items"/>
+ </field>
+ <field name="billTo" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="purchaseorder_billto"/>
+ <column name="address_billto_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.AddressImpl"/>
+ </field>
+ <field name="shipTo" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="purchaseorder_shipto"/>
+ <column name="address_shipto_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.AddressImpl"/>
+ </field>
+ <field name="comment" persistence-modifier="persistent" null-value="none"/>
+ <field name="orderDate" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="status" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="customer" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="purchaseorder_customer"/>
+ <column name="purchaseorder_customer_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.CustomerImpl"/>
+ </field>
+ <field name="previousOrder" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="purchaseorder_previousorder"/>
+ <column name="purchaseorder_previousorder_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.PurchaseOrderImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.AddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="address" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.epo2.Address"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Address"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ <field name="country" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.SupplierImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="supplier" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.epo2.Supplier"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Supplier"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ <field name="customers" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.CustomerImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="supplier_customers_e_id" allows-null="true"/>
+ </element>
+ <order column="SUPPLIER_CUSTOMERS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="supplier_customers"/>
+ </field>
+ <field name="orders" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.PurchaseOrderImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="supplier_orders_e_id" allows-null="true"/>
+ </element>
+ <order column="SUPPLIER_ORDERS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="supplier_orders"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.CustomerImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="customer" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.epo2.Customer"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Customer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="customerID" persistence-modifier="persistent" null-value="none"/>
+ <field name="orders" persistence-modifier="persistent" mapped-by="customer" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.PurchaseOrderImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="CUSTOMER_ORDERS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.GlobalAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.epo2.GlobalAddress"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="GlobalAddress"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="location" persistence-modifier="persistent" table="globaladdress_location">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="GLOBALADDRESS_LOCATION_IDX"/>
+ </field>
+ <field name="countryCode" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.epo2.impl.GlobalLocationImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="globallocation" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.epo2.GlobalLocation"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="GlobalLocation"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="countryCode" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/forum/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/forum/impl/package.jdo
new file mode 100644
index 000000000..fcf5325c9
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/forum/impl/package.jdo
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.ForumImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="forum" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.forum.Forum"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Forum"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="exception"/>
+ <field name="members" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.MemberImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="forum_members_e_id" allows-null="true"/>
+ </element>
+ <order column="FORUM_MEMBERS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="forum_members"/>
+ </field>
+ <field name="topics" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.TopicImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="forum_topics_e_id" allows-null="true"/>
+ </element>
+ <order column="FORUM_TOPICS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="forum_topics"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.MemberImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="member" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.forum.Member"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Member"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="nickname" persistence-modifier="persistent" null-value="exception"/>
+ <field name="posts" persistence-modifier="persistent" mapped-by="author" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.PostImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="MEMBER_POSTS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="created" persistence-modifier="persistent" mapped-by="creator" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.TopicImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="MEMBER_CREATED_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.PostImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="post" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.forum.Post"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Post"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="comment" persistence-modifier="persistent" null-value="exception"/>
+ <field name="author" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="post_author"/>
+ <column name="post_author_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.MemberImpl"/>
+ </field>
+ <field name="topic" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="post_topic"/>
+ <column name="post_topic_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.TopicImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.TopicImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="topic" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.forum.Topic"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Topic"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="exception"/>
+ <field name="category" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="categoryESet" persistence-modifier="persistent"/>
+ <field name="creator" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="topic_creator"/>
+ <column name="topic_creator_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.MemberImpl"/>
+ </field>
+ <field name="posts" persistence-modifier="persistent" mapped-by="topic" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.PostImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="TOPIC_POSTS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/inv/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/inv/impl/package.jdo
new file mode 100644
index 000000000..d01d2beb5
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/inv/impl/package.jdo
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.inv.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="ptype" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.inv.PType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="PType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="id" persistence-modifier="persistent" primary-key="true" value-strategy="auto" indexed="true"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ <field name="base" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="ptype_base"/>
+ <column name="ptype_base_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PTypeImpl"/>
+ </field>
+ <field name="subTypes" persistence-modifier="persistent" mapped-by="base" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PTypeImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="subNOTypes" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PTypeImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="ptype_subnotypes_id" allows-null="true"/>
+ </element>
+ <foreign-key delete-action="restrict" update-action="cascade" name="ptype_subnotypes"/>
+ </field>
+ <field name="infoReferences" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PDeclarationImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="ptype_inforeferences_id" allows-null="true"/>
+ </element>
+ <foreign-key delete-action="restrict" update-action="cascade" name="ptype_inforeferences"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PDeclarationImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="pdeclaration" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.inv.PDeclaration"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="PDeclaration"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="id" persistence-modifier="persistent" primary-key="true" value-strategy="auto" indexed="true"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/library/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/library/impl/package.jdo
new file mode 100644
index 000000000..30f3905d2
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/library/impl/package.jdo
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.library.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="book" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.library.Book"/>
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.library.SerializableEObject"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <implements name="java.io.Serializable"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Book"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="exception"/>
+ <field name="pages" persistence-modifier="persistent" null-value="exception"/>
+ <field name="pagesESet" persistence-modifier="persistent"/>
+ <field name="category" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="categoryESet" persistence-modifier="persistent"/>
+ <field name="author" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="book_author"/>
+ <column name="book_author_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="library" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.library.Library"/>
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.library.SerializableEObject"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <implements name="java.io.Serializable"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Library"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="writers" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="false"/>
+ </collection>
+ <element>
+ <column name="library_writers_e_id" allows-null="true"/>
+ </element>
+ <order column="LIBRARY_WRITERS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="library_writers"/>
+ </field>
+ <field name="books" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="false"/>
+ </collection>
+ <element>
+ <column name="library_books_e_id" allows-null="true"/>
+ </element>
+ <order column="LIBRARY_BOOKS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="library_books"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="writer" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.library.Writer"/>
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.library.SerializableEObject"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <implements name="java.io.Serializable"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Writer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="books" persistence-modifier="persistent" mapped-by="author" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="WRITER_BOOKS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/play/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/play/impl/package.jdo
new file mode 100644
index 000000000..fadaee900
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/play/impl/package.jdo
@@ -0,0 +1,201 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.play.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.play.impl.ActTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="acttype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.play.ActType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ActType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="scene" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.play.impl.SceneTypeImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="acttype_scene_e_id" allows-null="true"/>
+ </element>
+ <order column="ACTTYPE_SCENE_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="acttype_scene"/>
+ </field>
+ <field name="pindex" persistence-modifier="persistent" null-value="exception"/>
+ <field name="pindexESet" persistence-modifier="persistent"/>
+ <field name="title" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.play.impl.FmTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="fmtype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.play.FmType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="FmType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="p" persistence-modifier="persistent" table="fmtype_p">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="FMTYPE_P_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.play.impl.PersonaeTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="personaetype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.play.PersonaeType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="PersonaeType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="group" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.play.impl.PersonaGroupTypeImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="personaGroup"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="PERSONAETYPE_GROUP_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.play.impl.PersonaGroupTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="personagrouptype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.play.PersonaGroupType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="PersonaGroupType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="persona" persistence-modifier="persistent" table="personagrouptype_persona">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="PERSONAGROUPTYPE_PERSONA_IDX"/>
+ </field>
+ <field name="groupDescription" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.play.impl.PlayTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="playtype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.play.PlayType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="PlayType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="exception"/>
+ <field name="fm" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="playtype_fm"/>
+ <column name="fmtype_fm_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.play.impl.FmTypeImpl"/>
+ </field>
+ <field name="personae" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="playtype_personae"/>
+ <column name="personaetype_personae_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.play.impl.PersonaeTypeImpl"/>
+ </field>
+ <field name="sceneDescription" persistence-modifier="persistent" null-value="exception"/>
+ <field name="playSubTitle" persistence-modifier="persistent" null-value="exception"/>
+ <field name="act" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.play.impl.ActTypeImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="playtype_act_e_id" allows-null="true"/>
+ </element>
+ <order column="PLAYTYPE_ACT_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="playtype_act"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.play.impl.SceneTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="scenetype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.play.SceneType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SceneType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="group" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.play.impl.SpeechTypeImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="speech"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="SCENETYPE_GROUP_IDX"/>
+ </field>
+ <field name="pindex" persistence-modifier="persistent" null-value="exception"/>
+ <field name="title" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.play.impl.SpeechTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="speechtype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.play.SpeechType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SpeechType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="group" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true" embedded="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ </embedded>
+ </element>
+ <order column="SPEECHTYPE_GROUP_IDX"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/product/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/product/impl/package.jdo
new file mode 100644
index 000000000..5855a9014
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/product/impl/package.jdo
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.product.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.product.impl.ProductTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="producttype" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.product.ProductType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ProductType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="code" persistence-modifier="persistent" null-value="exception"/>
+ <field name="codeESet" persistence-modifier="persistent"/>
+ <field name="id" persistence-modifier="persistent" primary-key="true"/>
+ <field name="supplier" persistence-modifier="persistent" delete-action="restrict" null-value="exception">
+ <foreign-key name="producttype_supplier"/>
+ <column name="suppliertype_supplier_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.product.impl.SupplierTypeImpl"/>
+ </field>
+ <field name="price" persistence-modifier="persistent" null-value="exception"/>
+ <field name="priceESet" persistence-modifier="persistent"/>
+ <field name="createdOn" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="anyOne" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="producttype_anyone"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ </field>
+ <field name="anyList" persistence-modifier="persistent" table="producttype_anylist" embedded="true" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="classifier">
+ <column name="CLASSIFIER"/>
+ </field>
+ <field name="value">
+ <column name="VALUE"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="PRODUCTTYPE_ANYLIST_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.product.impl.SupplierTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="suppliertype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.product.SupplierType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SupplierType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="noOfEmployees" persistence-modifier="persistent" null-value="exception"/>
+ <field name="noOfEmployeesESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.product.impl.ClassificationTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="classificationtype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.product.ClassificationType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ClassificationType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="nameESet" persistence-modifier="persistent"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/schemaprimerpo/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/schemaprimerpo/impl/package.jdo
new file mode 100644
index 000000000..a39ca0988
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/schemaprimerpo/impl/package.jdo
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.schemaprimerpo.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.schemaprimerpo.impl.ItemImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="item" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.schemaprimerpo.Item"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Item"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="productName" persistence-modifier="persistent" null-value="exception"/>
+ <field name="quantity" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="uSPrice" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="comment" persistence-modifier="persistent" null-value="none"/>
+ <field name="shipDate" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="partNum" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.schemaprimerpo.impl.PurchaseOrderImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="purchaseorder" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.schemaprimerpo.PurchaseOrder"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="PurchaseOrder"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="shipTo" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="purchaseorder_shipto"/>
+ <column name="usaddress_shipto_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.schemaprimerpo.impl.USAddressImpl"/>
+ </field>
+ <field name="billTo" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="purchaseorder_billto"/>
+ <column name="usaddress_billto_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.schemaprimerpo.impl.USAddressImpl"/>
+ </field>
+ <field name="comment" persistence-modifier="persistent" null-value="none"/>
+ <field name="items" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.schemaprimerpo.impl.ItemImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="purchaseorder_items_e_id" allows-null="true"/>
+ </element>
+ <order column="PURCHASEORDER_ITEMS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="purchaseorder_items"/>
+ </field>
+ <field name="orderDate" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.schemaprimerpo.impl.USAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="usaddress" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.schemaprimerpo.USAddress"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="USAddress"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="street" persistence-modifier="persistent" null-value="exception"/>
+ <field name="city" persistence-modifier="persistent" null-value="exception"/>
+ <field name="state" persistence-modifier="persistent" null-value="exception"/>
+ <field name="zip" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="country" persistence-modifier="persistent" null-value="none"/>
+ <field name="countryESet" persistence-modifier="persistent"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/schoollibrary/library/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/schoollibrary/library/impl/package.jdo
new file mode 100644
index 000000000..72607c1e3
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/schoollibrary/library/impl/package.jdo
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.library.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.library.impl.BookImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="book" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.library.Book"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Book"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="none"/>
+ <field name="pages" persistence-modifier="persistent" null-value="none"/>
+ <field name="category" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="author" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="book_author"/>
+ <column name="book_author_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.library.impl.WriterImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.library.impl.LibraryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="library" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.library.Library"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Library"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ <field name="writers" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.library.impl.WriterImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="library_writers_e_id" allows-null="true"/>
+ </element>
+ <order column="LIBRARY_WRITERS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="library_writers"/>
+ </field>
+ <field name="books" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.library.impl.BookImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="library_books_e_id" allows-null="true"/>
+ </element>
+ <order column="LIBRARY_BOOKS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="library_books"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.library.impl.WriterImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="writer" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.library.Writer"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Writer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ <field name="books" persistence-modifier="persistent" mapped-by="author" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.library.impl.BookImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="WRITER_BOOKS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ </class>
+ </package>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.schoollibrary.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.schoollibrary.impl.AssetImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="asset" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.schoollibrary.Asset"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Asset"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="value" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.schoollibrary.impl.SchoolBookImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.schoollibrary.SchoolBook"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="SchoolBook"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="value" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.schoollibrary.impl.SchoolLibraryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.schoollibrary.schoollibrary.SchoolLibrary"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="SchoolLibrary"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="location" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/sunBooks/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/sunBooks/impl/package.jdo
new file mode 100644
index 000000000..8f1505291
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/sample/sunBooks/impl/package.jdo
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.impl.AuthorsTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="authorstype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.AuthorsType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="AuthorsType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="authorName" persistence-modifier="persistent" table="authorstype_authorname">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="AUTHORSTYPE_AUTHORNAME_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.impl.BooksTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="bookstype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.BooksType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="BooksType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="book" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.impl.BookTypeImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="bookstype_book_e_id" allows-null="true"/>
+ </element>
+ <order column="BOOKSTYPE_BOOK_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="bookstype_book"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.impl.BookTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="booktype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.BookType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="BookType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="iSBN" persistence-modifier="persistent" null-value="exception"/>
+ <field name="iSBNESet" persistence-modifier="persistent"/>
+ <field name="price" persistence-modifier="persistent" null-value="exception"/>
+ <field name="authors" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="booktype_authors"/>
+ <column name="authorstype_authors_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.impl.AuthorsTypeImpl"/>
+ </field>
+ <field name="description" persistence-modifier="persistent" null-value="none"/>
+ <field name="promotion" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="booktype_promotion"/>
+ <column name="promotiontype_promotion_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.impl.PromotionTypeImpl"/>
+ </field>
+ <field name="publicationDate" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="bookCategory" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="bookCategoryESet" persistence-modifier="persistent"/>
+ <field name="itemId" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.impl.CollectionTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="collectiontype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.CollectionType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="CollectionType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="books" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="collectiontype_books"/>
+ <column name="bookstype_books_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.impl.BooksTypeImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.impl.PromotionTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="promotiontype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.sample.sunBooks.PromotionType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="PromotionType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="discount" persistence-modifier="persistent" null-value="none"/>
+ <field name="none" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/anytype/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/anytype/impl/package.jdo
new file mode 100644
index 000000000..169f4dadd
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/anytype/impl/package.jdo
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.anytype.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.anytype.impl.AImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="a" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.anytype.A"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="A"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="doub" persistence-modifier="persistent" null-value="exception"/>
+ <field name="doubESet" persistence-modifier="persistent"/>
+ <field name="lon" persistence-modifier="persistent" null-value="exception"/>
+ <field name="lonESet" persistence-modifier="persistent"/>
+ <field name="myB" persistence-modifier="persistent" delete-action="restrict" null-value="exception">
+ <foreign-key name="a_myb"/>
+ <column name="b_myb_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.anytype.impl.BImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.anytype.impl.BImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="b" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.anytype.B"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="B"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.anytype.impl.CImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="c" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.anytype.C"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="C"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.anytype.impl.TestAnyImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="testany" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.anytype.TestAny"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TestAny"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="singleAnyType" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="testany_singleanytype"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ </field>
+ <field name="multiAnyType" persistence-modifier="persistent" table="testany_multianytype" embedded="true" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="classifier">
+ <column name="CLASSIFIER"/>
+ </field>
+ <field name="value">
+ <column name="VALUE"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="TESTANY_MULTIANYTYPE_IDX"/>
+ </field>
+ <field name="a" persistence-modifier="persistent" null-value="exception"/>
+ <field name="aESet" persistence-modifier="persistent"/>
+ <field name="myAny" persistence-modifier="persistent" table="testany_myany">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.AnyFeatureMapEntry"/>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath">
+ <column name="FEATUREPATH"/>
+ </field>
+ <field name="anyValue">
+ <column name="ANYVALUE"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="TESTANY_MYANY_IDX"/>
+ </field>
+ <field name="any" persistence-modifier="persistent" table="testany_any">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.AnyFeatureMapEntry"/>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath">
+ <column name="FEATUREPATH"/>
+ </field>
+ <field name="anyValue">
+ <column name="ANYVALUE"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="TESTANY_ANY_IDX"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/attributes/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/attributes/impl/package.jdo
new file mode 100644
index 000000000..3cc127b68
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/attributes/impl/package.jdo
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.attributes.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.attributes.impl.AImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="a" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.attributes.A"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="A"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="nameESet" persistence-modifier="persistent"/>
+ <field name="b" persistence-modifier="persistent" null-value="none"/>
+ <field name="bESet" persistence-modifier="persistent"/>
+ <field name="c" persistence-modifier="persistent" null-value="none"/>
+ <field name="comment" persistence-modifier="persistent" null-value="none"/>
+ <field name="commentESet" persistence-modifier="persistent"/>
+ <field name="id" persistence-modifier="persistent" primary-key="true"/>
+ <field name="d" persistence-modifier="persistent" null-value="exception"/>
+ <field name="myR" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="a_myr"/>
+ <column name="r_myr_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.attributes.impl.RImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.attributes.impl.RImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="r" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.attributes.R"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="R"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/duration/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/duration/impl/package.jdo
new file mode 100644
index 000000000..17ac448ca
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/duration/impl/package.jdo
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.duration.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.duration.impl.DurationTestImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="durationtest" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.duration.DurationTest"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="DurationTest"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ <field name="duration" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="durationESet" persistence-modifier="persistent"/>
+ <field name="durations" persistence-modifier="persistent" table="durationtest_durations">
+ <collection element-type="javax.xml.datatype.Duration">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="DURATIONTEST_DURATIONS_IDX"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/ecoreattrs/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/ecoreattrs/impl/package.jdo
new file mode 100644
index 000000000..035450b21
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/ecoreattrs/impl/package.jdo
@@ -0,0 +1,113 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.impl.ElementImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="element" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.Element"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Element"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="nameMap" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.impl.NameListImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="names"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="ELEMENT_NAMEMAP_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.impl.FeatureImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="feature" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.Feature"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Feature"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="aMap" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="java.lang.Double"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="value"/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true" embedded="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ </embedded>
+ </element>
+ <order column="FEATURE_AMAP_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.impl.MixedImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="mixed" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.Mixed"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Mixed"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="mixed" persistence-modifier="persistent" table="mixed_mixed">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.AnyFeatureMapEntry"/>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath">
+ <column name="FEATUREPATH"/>
+ </field>
+ <field name="anyValue">
+ <column name="ANYVALUE"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="MIXED_MIXED_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.impl.NameListImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="namelist" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.ecoreattrs.NameList"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="NameList"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="firstName" persistence-modifier="persistent" null-value="exception"/>
+ <field name="middleName" persistence-modifier="persistent" null-value="exception"/>
+ <field name="lastName" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/emap/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/emap/impl/package.jdo
new file mode 100644
index 000000000..ed9edb310
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/emap/impl/package.jdo
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.BookImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="book" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.Book"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Book"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="exception"/>
+ <field name="writers" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.StringToWriterMapEntryImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="book_writers_e_id" allows-null="true"/>
+ </element>
+ <order column="BOOK_WRITERS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="book_writers"/>
+ </field>
+ <field name="keyWords" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.StringToStringMapEntryImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="book_keywords_e_id" allows-null="true"/>
+ </element>
+ <order column="BOOK_KEYWORDS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="book_keywords"/>
+ </field>
+ <field name="cityByWriter" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterToStringMapEntryImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="book_citybywriter_e_id" allows-null="true"/>
+ </element>
+ <order column="BOOK_CITYBYWRITER_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="book_citybywriter"/>
+ </field>
+ <field name="categoryByDate" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.DateToCategoryMapEntryImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="book_categorybydate_e_id" allows-null="true"/>
+ </element>
+ <order column="BOOK_CATEGORYBYDATE_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="book_categorybydate"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.DateToCategoryMapEntryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="datetocategorymapentry" identity-type="datastore">
+ <implements name="java.util.Map$Entry"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="DateToCategoryMapEntry"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="key" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="value" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="valueESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.StringToStringMapEntryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="stringtostringmapentry" identity-type="datastore">
+ <implements name="java.util.Map$Entry"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="StringToStringMapEntry"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="key" persistence-modifier="persistent" null-value="none"/>
+ <field name="value" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.StringToWriterMapEntryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="stringtowritermapentry" identity-type="datastore">
+ <implements name="java.util.Map$Entry"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="StringToWriterMapEntry"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="key" persistence-modifier="persistent" null-value="none"/>
+ <field name="value" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="stringtowritermapentry_value"/>
+ <column name="writer_value_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterImpl"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="writer" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.Writer"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Writer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterToStringMapEntryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="writertostringmapentry" identity-type="datastore">
+ <implements name="java.util.Map$Entry"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="WriterToStringMapEntry"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="key" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="writertostringmapentry_key"/>
+ <column name="writer_key_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.emap.impl.WriterImpl"/>
+ </field>
+ <field name="value" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/extension/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/extension/impl/package.jdo
new file mode 100644
index 000000000..437de9e47
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/extension/impl/package.jdo
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.AddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="address" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.Address"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Address"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="street" persistence-modifier="persistent" null-value="exception"/>
+ <field name="city" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.AddressListImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="addresslist" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.AddressList"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="AddressList"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="firstAddress" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="addresslist_firstaddress"/>
+ <column name="firstaddressholder_firstaddress_e_id" allows-null="false"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.FirstAddressHolderImpl"/>
+ </field>
+ <field name="secondAddress" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.AddressImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="addresslist_secondaddress_e_id" allows-null="true"/>
+ </element>
+ <order column="ADDRESSLIST_SECONDADDRESS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="addresslist_secondaddress"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.DistrictUKAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.DistrictUKAddress"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="DistrictUKAddress"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="district" persistence-modifier="persistent" null-value="none"/>
+ <field name="districtESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.FirstAddressHolderImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="firstaddressholder" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.FirstAddressHolder"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="FirstAddressHolder"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="value" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.AddressImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="firstaddressholder_value_e_id" allows-null="true"/>
+ </element>
+ <order column="FIRSTADDRESSHOLDER_VALUE_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="firstaddressholder_value"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.InternationalPriceImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="internationalprice" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.InternationalPrice"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="InternationalPrice"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="value" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="currency" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.UKAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.UKAddress"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="UKAddress"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="postcode" persistence-modifier="persistent" null-value="none"/>
+ <field name="exportCode" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="exportCodeESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.impl.USAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="UNITEDSTATESADDRESS" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.extension.USAddress"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="USAddress"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="state" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="stateESet" persistence-modifier="persistent"/>
+ <field name="zip" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="zipESet" persistence-modifier="persistent"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/groupall/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/groupall/impl/package.jdo
new file mode 100644
index 000000000..0a9a05136
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/groupall/impl/package.jdo
@@ -0,0 +1,146 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.impl.AddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="address" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.Address"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Address"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="group" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true" embedded="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ </embedded>
+ </element>
+ <order column="ADDRESS_GROUP_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.impl.AddressGroupImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="addressgroup" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.AddressGroup"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="AddressGroup"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="groupName" persistence-modifier="persistent" null-value="exception"/>
+ <field name="shipTo" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="addressgroup_shipto"/>
+ <column name="address_shipto_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.impl.AddressImpl"/>
+ </field>
+ <field name="billTo" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="addressgroup_billto"/>
+ <column name="address_billto_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.impl.AddressImpl"/>
+ </field>
+ <field name="simpleAddress" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.impl.AddressListImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="addresslist" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.AddressList"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="AddressList"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="groupName" persistence-modifier="persistent" null-value="exception"/>
+ <field name="addrs" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.impl.AddressImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="shipTo"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="ADDRESSLIST_ADDRS_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.impl.SimpleAllMapTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="simpleallmaptype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.SimpleAllMapType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SimpleAllMapType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="allMap" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true" embedded="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ </embedded>
+ </element>
+ <order column="SIMPLEALLMAPTYPE_ALLMAP_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.impl.SimpleAllTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="simplealltype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.groupall.SimpleAllType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SimpleAllType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="aaa" persistence-modifier="persistent" null-value="exception"/>
+ <field name="bbb" persistence-modifier="persistent" null-value="exception"/>
+ <field name="ccc" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/list/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/list/impl/package.jdo
new file mode 100644
index 000000000..498f91afc
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/list/impl/package.jdo
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.list.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.list.impl.statesByCountryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="statesbycountry" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.list.statesByCountry"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="statesByCountry"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="country" persistence-modifier="persistent" null-value="exception"/>
+ <field name="index" persistence-modifier="persistent" null-value="exception"/>
+ <field name="indexESet" persistence-modifier="persistent"/>
+ <field name="allStates" persistence-modifier="persistent" table="statesbycountry_allstates">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="STATESBYCOUNTRY_ALLSTATES_IDX"/>
+ </field>
+ <field name="sixImportantStates" persistence-modifier="persistent" table="statesbycountry_siximportantstates">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="STATESBYCOUNTRY_SIXIMPORTANTSTATES_IDX"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/listunion/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/listunion/impl/package.jdo
new file mode 100644
index 000000000..037df67b9
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/listunion/impl/package.jdo
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.listunion.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.listunion.impl.statesByCountryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="statesbycountry" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.listunion.statesByCountry"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="statesByCountry"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="country" persistence-modifier="persistent" null-value="exception"/>
+ <field name="allStates" persistence-modifier="persistent" table="statesbycountry_allstates">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="STATESBYCOUNTRY_ALLSTATES_IDX"/>
+ </field>
+ <field name="sixImportantStates" persistence-modifier="persistent" table="statesbycountry_siximportantstates">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="STATESBYCOUNTRY_SIXIMPORTANTSTATES_IDX"/>
+ </field>
+ <field name="zipUnion" persistence-modifier="persistent" null-value="exception"/>
+ <field name="zipUnions" persistence-modifier="persistent" table="statesbycountry_zipunions">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="STATESBYCOUNTRY_ZIPUNIONS_IDX"/>
+ </field>
+ <field name="simpleUnion" persistence-modifier="persistent" null-value="exception" serialized="true"/>
+ <field name="simpleUnions" persistence-modifier="persistent" table="statesbycountry_simpleunions">
+ <collection element-type="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="classifier">
+ <column name="CLASSIFIER"/>
+ </field>
+ <field name="value">
+ <column name="VALUE"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="STATESBYCOUNTRY_SIMPLEUNIONS_IDX"/>
+ </field>
+ <field name="simpleStringUnion" persistence-modifier="persistent" null-value="exception"/>
+ <field name="simpleStringUnions" persistence-modifier="persistent" table="statesbycountry_simplestringunions">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="STATESBYCOUNTRY_SIMPLESTRINGUNIONS_IDX"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/mixed/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/mixed/impl/package.jdo
new file mode 100644
index 000000000..a282647da
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/mixed/impl/package.jdo
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.mixed.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.mixed.impl.LetterBodyTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="letterbodytype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.mixed.LetterBodyType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="LetterBodyType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="mixed" persistence-modifier="persistent" table="letterbodytype_mixed">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.AnyFeatureMapEntry"/>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath">
+ <column name="FEATUREPATH"/>
+ </field>
+ <field name="anyValue">
+ <column name="ANYVALUE"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="LETTERBODYTYPE_MIXED_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.mixed.impl.SalutationTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="salutationtype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.mixed.SalutationType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SalutationType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="mixed" persistence-modifier="persistent" table="salutationtype_mixed">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.AnyFeatureMapEntry"/>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath">
+ <column name="FEATUREPATH"/>
+ </field>
+ <field name="anyValue">
+ <column name="ANYVALUE"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="SALUTATIONTYPE_MIXED_IDX"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/nestedgroup/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/nestedgroup/impl/package.jdo
new file mode 100644
index 000000000..77f5ec5b5
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/nestedgroup/impl/package.jdo
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.nestedgroup.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.nestedgroup.impl.AImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="a" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.nestedgroup.A"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="A"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="group" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.nestedgroup.impl.CTypeImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="c"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="A_GROUP_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.nestedgroup.impl.CTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="ctype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.nestedgroup.CType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="CType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="cname" persistence-modifier="persistent" null-value="exception"/>
+ <field name="cvalue" persistence-modifier="persistent" null-value="exception"/>
+ <field name="cvalueESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.nestedgroup.impl.ElementImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="element" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.nestedgroup.Element"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Element"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="mixed" persistence-modifier="persistent" table="element_mixed">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.AnyFeatureMapEntry"/>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath">
+ <column name="FEATUREPATH"/>
+ </field>
+ <field name="anyValue">
+ <column name="ANYVALUE"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="ELEMENT_MIXED_IDX"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/qname/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/qname/impl/package.jdo
new file mode 100644
index 000000000..b8acaea08
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/qname/impl/package.jdo
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.qname.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.qname.impl.MytestImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="mytest" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.qname.Mytest"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Mytest"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="description" persistence-modifier="persistent" null-value="exception"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="names" persistence-modifier="persistent" table="mytest_names">
+ <collection element-type="javax.xml.namespace.QName">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="MYTEST_NAMES_IDX"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/restriction/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/restriction/impl/package.jdo
new file mode 100644
index 000000000..7cfcffe9f
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/restriction/impl/package.jdo
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.restriction.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.restriction.impl.MemberImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.restriction.Member"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="Member"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.restriction.impl.XMLDeviantImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="xmldeviant" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.restriction.XMLDeviant"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="XMLDeviant"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="numPosts" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="signature" persistence-modifier="persistent" null-value="exception"/>
+ <field name="signatureESet" persistence-modifier="persistent"/>
+ <field name="email" persistence-modifier="persistent" null-value="none"/>
+ <field name="firstSubscribed" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="mailReader" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/simplefeaturemap/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/simplefeaturemap/impl/package.jdo
new file mode 100644
index 000000000..368624b33
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/simplefeaturemap/impl/package.jdo
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simplefeaturemap.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simplefeaturemap.impl.PurchaseOrderImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="purchaseorder" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simplefeaturemap.PurchaseOrder"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="PurchaseOrder"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simplefeaturemap.impl.SupplierImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="supplier" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simplefeaturemap.Supplier"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Supplier"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="orders" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="java.lang.Long"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="hardCopyOrderNumber"/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simplefeaturemap.impl.PurchaseOrderImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="preferredOrders"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="SUPPLIER_ORDERS_IDX"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/simpletypes/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/simpletypes/impl/package.jdo
new file mode 100644
index 000000000..3e784e02d
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/simpletypes/impl/package.jdo
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.impl.SimpleListImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="simplelist" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.SimpleList"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SimpleList"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="code" persistence-modifier="persistent" null-value="exception"/>
+ <field name="codeESet" persistence-modifier="persistent"/>
+ <field name="boo" persistence-modifier="persistent" table="simplelist_boo">
+ <collection element-type="java.lang.Boolean">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="SIMPLELIST_BOO_IDX"/>
+ </field>
+ <field name="byt" persistence-modifier="persistent" table="simplelist_byt">
+ <collection element-type="java.lang.Byte">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="SIMPLELIST_BYT_IDX"/>
+ </field>
+ <field name="doubl" persistence-modifier="persistent" table="simplelist_doubl">
+ <collection element-type="java.lang.Double">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="SIMPLELIST_DOUBL_IDX"/>
+ </field>
+ <field name="floa" persistence-modifier="persistent" table="simplelist_floa">
+ <collection element-type="java.lang.Float">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="SIMPLELIST_FLOA_IDX"/>
+ </field>
+ <field name="inte" persistence-modifier="persistent" table="simplelist_inte">
+ <collection element-type="java.lang.Integer">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="SIMPLELIST_INTE_IDX"/>
+ </field>
+ <field name="long_" persistence-modifier="persistent" table="longNum">
+ <collection element-type="java.lang.Long">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="SIMPLELIST_LONG_IDX"/>
+ </field>
+ <field name="shor" persistence-modifier="persistent" table="simplelist_shor">
+ <collection element-type="java.lang.Short">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="SIMPLELIST_SHOR_IDX"/>
+ </field>
+ <field name="enu" persistence-modifier="persistent" table="simplelist_enu">
+ <collection element-type="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.SimpleEnum">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="SIMPLELIST_ENU_IDX"/>
+ </field>
+ <field name="dat" persistence-modifier="persistent" table="simplelist_dat">
+ <collection element-type="java.util.Date">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="SIMPLELIST_DAT_IDX"/>
+ </field>
+ <field name="limitedstring" persistence-modifier="persistent" table="simplelist_limitedstring">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="SIMPLELIST_LIMITEDSTRING_IDX"/>
+ </field>
+ <field name="stri" persistence-modifier="persistent" table="simplelist_stri">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="SIMPLELIST_STRI_IDX"/>
+ </field>
+ <field name="intArray" persistence-modifier="persistent" table="simplelist_intarray">
+ <array/>
+ <join/>
+ <element/>
+ </field>
+ <field name="doubleArray" persistence-modifier="persistent" table="simplelist_doublearray">
+ <array/>
+ <join/>
+ <element/>
+ </field>
+ <field name="stringArray" persistence-modifier="persistent" table="simplelist_stringarray">
+ <array/>
+ <join/>
+ <element/>
+ </field>
+ <field name="byteArray" persistence-modifier="persistent" table="simplelist_bytearray">
+ <array/>
+ <join/>
+ <element/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.impl.SimpleTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="simpletype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.SimpleType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SimpleType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="code" persistence-modifier="persistent" null-value="exception"/>
+ <field name="codeESet" persistence-modifier="persistent"/>
+ <field name="boo" persistence-modifier="persistent" null-value="exception"/>
+ <field name="booESet" persistence-modifier="persistent"/>
+ <field name="byt" persistence-modifier="persistent" null-value="exception"/>
+ <field name="bytESet" persistence-modifier="persistent"/>
+ <field name="doubl" persistence-modifier="persistent" null-value="exception"/>
+ <field name="doublESet" persistence-modifier="persistent"/>
+ <field name="float_" persistence-modifier="persistent" null-value="exception"/>
+ <field name="floatESet" persistence-modifier="persistent"/>
+ <field name="inte" persistence-modifier="persistent" null-value="exception"/>
+ <field name="inteESet" persistence-modifier="persistent"/>
+ <field name="lon" persistence-modifier="persistent" null-value="exception"/>
+ <field name="lonESet" persistence-modifier="persistent"/>
+ <field name="shor" persistence-modifier="persistent" null-value="exception"/>
+ <field name="shorESet" persistence-modifier="persistent"/>
+ <field name="enu" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="enuESet" persistence-modifier="persistent"/>
+ <field name="dat" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="limitedstring" persistence-modifier="persistent" null-value="exception">
+ <column name="limitedstring" allows-null="false" length="10"/>
+ </field>
+ <field name="limitedDecimal" persistence-modifier="persistent" null-value="exception" embedded="true">
+ <column name="limiteddecimal" allows-null="false" length="4" scale="1"/>
+ </field>
+ <field name="limitedDecimalESet" persistence-modifier="persistent"/>
+ <field name="extraLimitedString" persistence-modifier="persistent" null-value="exception">
+ <column name="extralimitedstring" allows-null="false" length="5"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.impl.SimpleTypeObjectImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="simpletypeobject" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.simpletypes.SimpleTypeObject"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SimpleTypeObject"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="code" persistence-modifier="persistent" null-value="exception"/>
+ <field name="codeESet" persistence-modifier="persistent"/>
+ <field name="boo" persistence-modifier="persistent" null-value="exception"/>
+ <field name="booESet" persistence-modifier="persistent"/>
+ <field name="byt" persistence-modifier="persistent" null-value="exception"/>
+ <field name="bytESet" persistence-modifier="persistent"/>
+ <field name="doubl" persistence-modifier="persistent" null-value="exception"/>
+ <field name="doublESet" persistence-modifier="persistent"/>
+ <field name="float_" persistence-modifier="persistent" null-value="exception"/>
+ <field name="floatESet" persistence-modifier="persistent"/>
+ <field name="inte" persistence-modifier="persistent" null-value="exception"/>
+ <field name="inteESet" persistence-modifier="persistent"/>
+ <field name="lon" persistence-modifier="persistent" null-value="exception"/>
+ <field name="lonESet" persistence-modifier="persistent"/>
+ <field name="shor" persistence-modifier="persistent" null-value="exception"/>
+ <field name="shorESet" persistence-modifier="persistent"/>
+ <field name="enu" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="enuESet" persistence-modifier="persistent"/>
+ <field name="dat" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="datESet" persistence-modifier="persistent"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/substitution/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/substitution/impl/package.jdo
new file mode 100644
index 000000000..6c361c57e
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/substitution/impl/package.jdo
@@ -0,0 +1,130 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.impl.ComplexNumberImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="complexnumber" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.ComplexNumber"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ComplexNumber"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="value" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="unit" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.impl.EvenComplexNumberTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.EvenComplexNumberType"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="EvenComplexNumberType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.impl.MultiNumberTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="multinumbertype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.MultiNumberType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="MultiNumberType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="myComplexAbstractGroup" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.impl.ComplexNumberImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="myComplexAbstract"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="MULTINUMBERTYPE_MYCOMPLEXABSTRACTGROUP_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.impl.NumberTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="numbertype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.NumberType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="NumberType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="mySimpleAbstractGroup" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="java.math.BigInteger"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="mySimpleAbstract"/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true" embedded="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ </embedded>
+ </element>
+ <order column="NUMBERTYPE_MYSIMPLEABSTRACTGROUP_IDX"/>
+ </field>
+ <field name="myComplexAbstractGroup" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.impl.ComplexNumberImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="myComplexAbstract"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="NUMBERTYPE_MYCOMPLEXABSTRACTGROUP_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.impl.OddComplexNumberTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitution.OddComplexNumberType"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="OddComplexNumberType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/substitutionzvon/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/substitutionzvon/impl/package.jdo
new file mode 100644
index 000000000..be05041dc
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/emf/schemaconstructs/substitutionzvon/impl/package.jdo
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.impl">
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.impl.ComplexAAAImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="complexaaa" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.ComplexAAA"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ComplexAAA"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="value" persistence-modifier="persistent" null-value="exception"/>
+ <field name="valueESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.impl.ComplexEvenTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.ComplexEvenType"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="ComplexEvenType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.impl.ComplexOddTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.ComplexOddType"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="ComplexOddType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.impl.RootTypeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="roottype" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.RootType"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="RootType"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="myAbstractGroup" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="java.math.BigInteger"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="myAbstract"/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true" embedded="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ </embedded>
+ </element>
+ <order column="ROOTTYPE_MYABSTRACTGROUP_IDX"/>
+ </field>
+ <field name="myComplexAbstractGroup" persistence-modifier="persistent">
+ <collection element-type="org.eclipse.emf.teneo.jpox.elist.GenericFeatureMapEntry">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <element>
+ <embedded>
+ <field name="featurePath"/>
+ <field name="localAnyValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ </field>
+ <field name="localReferenceValue" embedded="true">
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.jpox.mapping.AnyTypeEObject"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value=""/>
+ <foreign-key delete-action="restrict" update-action="cascade"/>
+ </field>
+ <field name="localContainmentReferenceValue" dependent="true">
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.emf.schemaconstructs.substitutionzvon.impl.ComplexAAAImpl"/>
+ <extension vendor-name="teneo" key="estructuralfeatures" value="myComplexAbstract"/>
+ </field>
+ </embedded>
+ </element>
+ <order column="ROOTTYPE_MYCOMPLEXABSTRACTGROUP_IDX"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/abstractsuper/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/abstractsuper/impl/package.jdo
new file mode 100644
index 000000000..b8468d5bd
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/abstractsuper/impl/package.jdo
@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl">
+ <class name="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.AddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="address" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.abstractsuper.Address"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table"/>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ <field name="street" persistence-modifier="persistent" null-value="exception"/>
+ <field name="city" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.ContentListImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="contentlist" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.abstractsuper.ContentList"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="ContentList"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ <field name="address" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.AddressImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="contentlist_address_name" allows-null="true"/>
+ </element>
+ <order column="CONTENTLIST_ADDRESS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="contentlist_address"/>
+ </field>
+ <field name="price" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.PriceImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="contentlist_price_name" allows-null="true"/>
+ </element>
+ <order column="CONTENTLIST_PRICE_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="contentlist_price"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.DistrictUKAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="districtukaddress" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.abstractsuper.DistrictUKAddress"/>
+ <inheritance strategy="new-table"/>
+ <version strategy="version-number" column="e_version"/>
+ <field name="district" persistence-modifier="persistent" null-value="exception"/>
+ <field name="districtESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.InternationalPriceImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.abstractsuper.InternationalPrice"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="myInternationalPrice"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="currency" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.PriceImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="myprice" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.abstractsuper.Price"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="DISCRIMINATOR" strategy="value-map" value="myPrice"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="value" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.UKAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="ukaddress" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.abstractsuper.UKAddress"/>
+ <inheritance strategy="new-table"/>
+ <version strategy="version-number" column="e_version"/>
+ <field name="postcode" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.USAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="UNITEDSTATESADDRESS" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.abstractsuper.USAddress"/>
+ <inheritance strategy="new-table"/>
+ <version strategy="version-number" column="e_version"/>
+ <field name="state" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="stateESet" persistence-modifier="persistent"/>
+ <field name="zip" persistence-modifier="persistent" null-value="exception" embedded="true"/>
+ <field name="zipESet" persistence-modifier="persistent"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.CustomerImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="customer" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.abstractsuper.Customer"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Customer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.SpecificCustomerImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.abstractsuper.SpecificCustomer"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="SpecificCustomer"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="specificName" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.UKAddressListImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="ukaddresslist" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.abstractsuper.UKAddressList"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="UKAddressList"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ <field name="address" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.abstractsuper.impl.UKAddressImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="ukaddresslist_address_name" allows-null="true"/>
+ </element>
+ <order column="UKADDRESSLIST_ADDRESS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="ukaddresslist_address"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/bagduplicate/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/bagduplicate/impl/package.jdo
new file mode 100644
index 000000000..93024aef9
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/bagduplicate/impl/package.jdo
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.issues.bagduplicate.impl">
+ <class name="org.eclipse.emf.teneo.samples.issues.bagduplicate.impl.PersonImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="person" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.bagduplicate.Person"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Person"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ <field name="father" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="person_father"/>
+ <column name="person_father_name" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.issues.bagduplicate.impl.PersonImpl"/>
+ </field>
+ <field name="mother" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="person_mother"/>
+ <column name="person_mother_name" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.issues.bagduplicate.impl.PersonImpl"/>
+ </field>
+ <field name="children" persistence-modifier="persistent" table="person_person" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.bagduplicate.impl.PersonImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/enumtest/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/enumtest/impl/package.jdo
new file mode 100644
index 000000000..09e32c1be
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/enumtest/impl/package.jdo
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.issues.enumtest.impl">
+ <class name="org.eclipse.emf.teneo.samples.issues.enumtest.impl.ItemImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="item" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.enumtest.Item"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Item"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="itemType" persistence-modifier="persistent" primary-key="true"/>
+ <field name="nullableItemType" persistence-modifier="persistent" null-value="none" embedded="true"/>
+ <field name="nullableItemTypeESet" persistence-modifier="persistent"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/generaltest/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/generaltest/impl/package.jdo
new file mode 100644
index 000000000..4e9feddd1
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/generaltest/impl/package.jdo
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.issues.generaltest.impl">
+ <class name="org.eclipse.emf.teneo.samples.issues.generaltest.impl.AddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="address" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.generaltest.Address"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Address"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ <field name="contacts" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.generaltest.impl.ContactImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <order column="ADDRESS_CONTACTS_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade"/>
+ </field>
+ <field name="state" persistence-modifier="none"/>
+ <field name="country" persistence-modifier="persistent" delete-action="restrict" null-value="none">
+ <foreign-key name="address_country"/>
+ <column name="country_country_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.issues.generaltest.impl.CountryImpl"/>
+ </field>
+ <field name="city" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="address_city"/>
+ <column name="city_city_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.issues.generaltest.impl.CityImpl"/>
+ </field>
+ <field name="tc" persistence-modifier="none"/>
+ <field name="volatileString" persistence-modifier="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.generaltest.impl.ContactImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="contact" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.generaltest.Contact"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Contact"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.generaltest.impl.CountryImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="country" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.generaltest.Country"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Country"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.generaltest.impl.CityImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="city" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.generaltest.City"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="City"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.generaltest.impl.TCImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="tc" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.generaltest.TC"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="TC"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/inheritance/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/inheritance/impl/package.jdo
new file mode 100644
index 000000000..ac8ebf5b0
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/inheritance/impl/package.jdo
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.issues.inheritance.impl">
+ <class name="org.eclipse.emf.teneo.samples.issues.inheritance.impl.AnnotationImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.inheritance.Annotation"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="Annotation"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.inheritance.impl.InterestImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.inheritance.Interest"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="Interest"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.inheritance.impl.SubOneImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.inheritance.SubOne"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="SubOne"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.inheritance.impl.SubThingImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="subthing" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.inheritance.SubThing"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="SubThing"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.inheritance.impl.SubTwoImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.inheritance.SubTwo"/>
+ <inheritance strategy="superclass-table">
+ <discriminator value="SubTwo"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.inheritance.impl.ThingImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="thing" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.inheritance.Thing"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Thing"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" primary-key="true"/>
+ <field name="things" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.inheritance.impl.SubThingImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="thing_things_name" allows-null="true"/>
+ </element>
+ <order column="THING_THINGS_IDX"/>
+ <foreign-key delete-action="restrict" update-action="cascade" name="thing_things"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/interfacetrue/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/interfacetrue/impl/package.jdo
new file mode 100644
index 000000000..567ffebf7
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/interfacetrue/impl/package.jdo
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.issues.interfacetrue.impl">
+ <class name="org.eclipse.emf.teneo.samples.issues.interfacetrue.impl.USAddressImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="usaddress" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.interfacetrue.USAddress"/>
+ <implements name="org.eclipse.emf.teneo.samples.issues.interfacetrue.Address"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="USAddress"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="state" persistence-modifier="persistent" null-value="exception"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/nav/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/nav/impl/package.jdo
new file mode 100644
index 000000000..fe56de182
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/nav/impl/package.jdo
@@ -0,0 +1,179 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.issues.nav.impl">
+ <class name="org.eclipse.emf.teneo.samples.issues.nav.impl.NavElementImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="nav_navelement" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.nav.NavElement"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="nav.NavElement"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="none"/>
+ <field name="description" persistence-modifier="persistent" null-value="none"/>
+ <field name="pageParams" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="nav_navelement_pageparams"/>
+ <column name="pageparams_pageparams_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.issues.nav.impl.PageParamsImpl"/>
+ </field>
+ <field name="moduleID" persistence-modifier="persistent" null-value="exception"/>
+ <field name="uniqueName" persistence-modifier="persistent" null-value="none"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.nav.impl.NavigationTreeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="nav_navigationtree" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.nav.NavigationTree"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="nav.NavigationTree"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="navElement" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.nav.impl.NavElementImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="navigationtree_navelement_e_id" allows-null="true"/>
+ </element>
+ <order column="NAVIGATIONTREE_NAVELEMENT_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="nav_navigationtree_navelement"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.nav.impl.PageParamsImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="nav_pageparams" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.nav.PageParams"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="nav.PageParams"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="renderParam" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.nav.impl.RenderParamImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="pageparams_renderparam_e_id" allows-null="true"/>
+ </element>
+ <order column="PAGEPARAMS_RENDERPARAM_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="nav_pageparams_renderparam"/>
+ </field>
+ <field name="pageHeader" persistence-modifier="persistent" table="nav_pageparams_pageheader">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="PAGEPARAMS_PAGEHEADER_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.nav.impl.RenderParamImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="nav_renderparam" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.nav.RenderParam"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="nav.RenderParam"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="value" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ </package>
+ <package name="org.eclipse.emf.teneo.samples.issues.top.impl">
+ <class name="org.eclipse.emf.teneo.samples.issues.top.impl.ApplicationDefinitionImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="top_applicationdefinition" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.top.ApplicationDefinition"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="top.ApplicationDefinition"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="exception"/>
+ <field name="description" persistence-modifier="persistent" null-value="none"/>
+ <field name="navigationElement" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.top.impl.NavigationElementImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="applicationdefinition_navigationelement_e_id" allows-null="true"/>
+ </element>
+ <order column="APPLICATIONDEFINITION_NAVIGATIONELEMENT_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="top_applicationdefinition_navigationelement"/>
+ </field>
+ <field name="appID" persistence-modifier="persistent" null-value="exception"/>
+ <field name="version" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.top.impl.NavigationElementImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="top_navigationelement" identity-type="application">
+ <implements name="org.eclipse.emf.teneo.samples.issues.top.NavigationElement"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="top.NavigationElement"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="title" persistence-modifier="persistent" null-value="none"/>
+ <field name="description" persistence-modifier="persistent" null-value="none"/>
+ <field name="pageParams" persistence-modifier="persistent" dependent="true" delete-action="restrict" null-value="none">
+ <foreign-key name="top_navigationelement_pageparams"/>
+ <column name="pageparams_pageparams_e_id" allows-null="true"/>
+ <extension vendor-name="jpox" key="implementation-classes" value="org.eclipse.emf.teneo.samples.issues.top.impl.PageParamsImpl"/>
+ </field>
+ <field name="uniqueName" persistence-modifier="persistent" primary-key="true"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.top.impl.PageParamsImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="top_pageparams" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.top.PageParams"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="top.PageParams"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="renderParam" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.top.impl.RenderParamImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="pageparams_renderparam_e_id" allows-null="true"/>
+ </element>
+ <order column="PAGEPARAMSRENDERPARAM1_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="top_pageparams_renderparam"/>
+ </field>
+ <field name="pageHeader" persistence-modifier="persistent" table="top_pageparams_pageheader">
+ <collection element-type="java.lang.String">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ <order column="PAGEPARAMSPAGEHEADER1_IDX"/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.top.impl.RenderParamImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="top_renderparam" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.top.RenderParam"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="top.RenderParam"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="value" persistence-modifier="persistent" null-value="exception"/>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.top.impl.TopImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="top_top" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.top.Top"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="top.Top"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="applicationDefinition" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.top.impl.ApplicationDefinitionImpl" dependent-element="true">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <element>
+ <column name="top_applicationdefinition_e_id" allows-null="true"/>
+ </element>
+ <order column="TOP_APPLICATIONDEFINITION_IDX"/>
+ <foreign-key delete-action="cascade" update-action="cascade" name="top_top_applicationdefinition"/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file
diff --git a/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/simplenm/impl/package.jdo b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/simplenm/impl/package.jdo
new file mode 100644
index 000000000..2cda8a75f
--- /dev/null
+++ b/examples/org.eclipse.emf.teneo.samples/src/org/eclipse/emf/teneo/samples/issues/simplenm/impl/package.jdo
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo SYSTEM "file:/javax/jdo/jdo.dtd">
+
+<jdo>
+ <package name="org.eclipse.emf.teneo.samples.issues.simplenm.impl">
+ <class name="org.eclipse.emf.teneo.samples.issues.simplenm.impl.MeImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="me" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.simplenm.Me"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="Me"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="you" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.simplenm.impl.YouImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.issues.simplenm.impl.YouImpl" requires-extent="true" persistence-modifier="persistence-capable" detachable="true" table="you" identity-type="datastore">
+ <implements name="org.eclipse.emf.teneo.samples.issues.simplenm.You"/>
+ <implements name="org.eclipse.emf.ecore.EObject"/>
+ <implements name="org.eclipse.emf.common.notify.Notifier"/>
+ <inheritance strategy="new-table">
+ <discriminator column="dtype" strategy="value-map" value="You"/>
+ </inheritance>
+ <version strategy="version-number" column="e_version"/>
+ <field name="name" persistence-modifier="persistent" null-value="exception"/>
+ <field name="me" persistence-modifier="persistent" delete-action="restrict">
+ <collection element-type="org.eclipse.emf.teneo.samples.issues.simplenm.impl.MeImpl" dependent-element="false">
+ <extension vendor-name="jpox" key="cache-lazy-loading" value="true"/>
+ </collection>
+ <join/>
+ </field>
+ </class>
+ </package>
+</jdo> \ No newline at end of file

Back to the top