Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Taal2011-11-01 18:12:35 +0000
committerMartin Taal2011-11-01 18:12:35 +0000
commit97842a213a338601aa158b3d9f995f464bb25681 (patch)
tree5b9a657ccdce9960b252f3bc8dcc09a2626bd711 /tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample
parent709ec105b89258b5e6b27e57cb3deb177529c54c (diff)
downloadorg.eclipse.emf.teneo-97842a213a338601aa158b3d9f995f464bb25681.tar.gz
org.eclipse.emf.teneo-97842a213a338601aa158b3d9f995f464bb25681.tar.xz
org.eclipse.emf.teneo-97842a213a338601aa158b3d9f995f464bb25681.zip
New structure
Diffstat (limited to 'tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample')
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_a_o_hibernate.hbm.xml133
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_e_o_hibernate.hbm.xml115
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_s_o_hibernate.hbm.xml115
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_a_o_hibernate.hbm.xml121
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_e_o_hibernate.hbm.xml106
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_s_o_hibernate.hbm.xml106
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_a_o_hibernate.hbm.xml67
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_e_o_hibernate.hbm.xml65
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_s_o_hibernate.hbm.xml65
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_a_o_hibernate.hbm.xml533
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_e_o_hibernate.hbm.xml581
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_s_o_hibernate.hbm.xml583
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_a_o_hibernate.hbm.xml65
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_e_o_hibernate.hbm.xml63
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_s_o_hibernate.hbm.xml63
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_a_o_hibernate.hbm.xml425
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_e_o_hibernate.hbm.xml422
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_s_o_hibernate.hbm.xml422
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_a_o_hibernate.hbm.xml129
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_e_o_hibernate.hbm.xml117
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_s_o_hibernate.hbm.xml117
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_a_o_hibernate.hbm.xml60
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_e_o_hibernate.hbm.xml54
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_s_o_hibernate.hbm.xml54
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_a_o_hibernate.hbm.xml148
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_e_o_hibernate.hbm.xml148
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_s_o_hibernate.hbm.xml148
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_a_o_hibernate.hbm.xml98
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_e_o_hibernate.hbm.xml91
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_s_o_hibernate.hbm.xml89
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_a_o_hibernate.hbm.xml100
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_e_o_hibernate.hbm.xml93
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_s_o_hibernate.hbm.xml91
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_a_o_hibernate.hbm.xml104
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_e_o_hibernate.hbm.xml97
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_s_o_hibernate.hbm.xml95
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_a_o_hibernate.hbm.xml84
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_e_o_hibernate.hbm.xml84
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_s_o_hibernate.hbm.xml81
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_a_o_hibernate.hbm.xml91
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_e_o_hibernate.hbm.xml84
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_s_o_hibernate.hbm.xml82
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_a_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_e_o_hibernate.hbm.xml84
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_s_o_hibernate.hbm.xml84
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_a_o_hibernate.hbm.xml91
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_e_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_s_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryUnloadAction_mysql_a_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryUnloadAction_mysql_e_o_hibernate.hbm.xml84
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryUnloadAction_mysql_s_o_hibernate.hbm.xml84
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryUseMappingFileAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryUseMappingFileAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryUseMappingFileAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ListAsIdBagAction_mysql_a_o_hibernate.hbm.xml47
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ListAsIdBagAction_mysql_e_o_hibernate.hbm.xml41
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ListAsIdBagAction_mysql_s_o_hibernate.hbm.xml41
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/MindMapAction_mysql_a_o_hibernate.hbm.xml231
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/MindMapAction_mysql_e_o_hibernate.hbm.xml213
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/MindMapAction_mysql_s_o_hibernate.hbm.xml213
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/NoEscapeLibraryAction_mysql_a_o_hibernate.hbm.xml100
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/NoEscapeLibraryAction_mysql_e_o_hibernate.hbm.xml93
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/NoEscapeLibraryAction_mysql_s_o_hibernate.hbm.xml91
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/PlayAction_mysql_a_o_hibernate.hbm.xml236
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/PlayAction_mysql_e_o_hibernate.hbm.xml215
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/PlayAction_mysql_s_o_hibernate.hbm.xml215
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/PrimerPOAction_mysql_a_o_hibernate.hbm.xml102
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/PrimerPOAction_mysql_e_o_hibernate.hbm.xml93
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/PrimerPOAction_mysql_s_o_hibernate.hbm.xml93
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ProductAction_mysql_a_o_hibernate.hbm.xml81
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ProductAction_mysql_e_o_hibernate.hbm.xml72
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ProductAction_mysql_s_o_hibernate.hbm.xml72
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/RentalClassifyNamesAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/RentalClassifyNamesAction_mysql_e_o_hibernate.hbm.xml97
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/RentalClassifyNamesAction_mysql_s_o_hibernate.hbm.xml97
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/RentalMapAsClassAction_mysql_a_o_hibernate.hbm.xml123
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/RentalMapAsClassAction_mysql_e_o_hibernate.hbm.xml117
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/RentalMapAsClassAction_mysql_s_o_hibernate.hbm.xml120
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/RentalResourceReferenceAction_mysql_a_o_hibernate.hbm.xml123
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/RentalResourceReferenceAction_mysql_e_o_hibernate.hbm.xml117
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/RentalResourceReferenceAction_mysql_s_o_hibernate.hbm.xml120
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SimpleLibraryAction_mysql_a_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SimpleLibraryAction_mysql_e_o_hibernate.hbm.xml84
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SimpleLibraryAction_mysql_s_o_hibernate.hbm.xml84
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SimpleLibraryResourceAction_mysql_a_o_hibernate.hbm.xml94
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SimpleLibraryResourceAction_mysql_e_o_hibernate.hbm.xml87
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SimpleLibraryResourceAction_mysql_s_o_hibernate.hbm.xml85
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SimpleRentalAction_mysql_a_o_hibernate.hbm.xml123
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SimpleRentalAction_mysql_e_o_hibernate.hbm.xml117
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SimpleRentalAction_mysql_s_o_hibernate.hbm.xml120
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SunBooksAction_mysql_a_o_hibernate.hbm.xml138
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SunBooksAction_mysql_e_o_hibernate.hbm.xml123
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/SunBooksAction_mysql_s_o_hibernate.hbm.xml123
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/WorkFlowAction_mysql_a_o_hibernate.hbm.xml180
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/WorkFlowAction_mysql_e_o_hibernate.hbm.xml219
-rwxr-xr-xtests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/WorkFlowAction_mysql_s_o_hibernate.hbm.xml219
129 files changed, 15510 insertions, 0 deletions
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..3106c4758
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,133 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="com.example.car.impl.CarFrameImpl" entity-name="CarFrame" abstract="false" lazy="false" discriminator-value="CarFrame" table="`carframe`">
+ <meta attribute="eclassName">CarFrame</meta>
+ <meta attribute="epackage">http://www.example.com/car.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="carframedtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <list name="carWheel" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carframe_carwheel">
+ <column name="`carframe_carwheel_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carframe_carwheel_idx`"/>
+ <one-to-many entity-name="CarWheel"/>
+ </list>
+ <many-to-one name="carLinkRef" entity-name="CarLink" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="carframe_carlinkref" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`carlink_carlinkref_e_id`"/>
+ </many-to-one>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <class name="com.example.car.impl.CarLinkImpl" entity-name="CarLink" abstract="false" lazy="false" discriminator-value="CarLink" table="`carlink`">
+ <meta attribute="eclassName">CarLink</meta>
+ <meta attribute="epackage">http://www.example.com/car.xsd</meta>
+ <id name="carLinkId" type="java.lang.String">
+ <column not-null="true" unique="false" name="`carlinkid`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="carlinkdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <class name="com.example.car.impl.CarsListImpl" entity-name="CarsList" abstract="false" lazy="false" discriminator-value="CarsList" table="`carslist`">
+ <meta attribute="eclassName">CarsList</meta>
+ <meta attribute="epackage">http://www.example.com/car.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="carslistdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <list name="carType" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carslist_cartype">
+ <column name="`carslist_cartype_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carslist_cartype_idx`"/>
+ <one-to-many entity-name="CarType"/>
+ </list>
+ <list name="carLink" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carslist_carlink">
+ <column name="`carslist_carlink_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carslist_carlink_idx`"/>
+ <one-to-many entity-name="CarLink"/>
+ </list>
+ </class>
+ <class name="com.example.car.impl.CarTireImpl" entity-name="CarTire" abstract="false" lazy="false" discriminator-value="CarTire" table="`cartire`">
+ <meta attribute="eclassName">CarTire</meta>
+ <meta attribute="epackage">http://www.example.com/car.xsd</meta>
+ <id name="name" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="cartiredtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ </class>
+ <class name="com.example.car.impl.CarTypeImpl" entity-name="CarType" abstract="false" lazy="false" discriminator-value="CarType" table="`cartype`">
+ <meta attribute="eclassName">CarType</meta>
+ <meta attribute="epackage">http://www.example.com/car.xsd</meta>
+ <id name="carID" type="java.lang.String">
+ <column not-null="true" unique="false" name="`carid`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="cartypedtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <list name="carFrame" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="cartype_carframe">
+ <column name="`cartype_carframe_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`cartype_carframe_idx`"/>
+ <one-to-many entity-name="CarFrame"/>
+ </list>
+ </class>
+ <class name="com.example.car.impl.CarWheelImpl" entity-name="CarWheel" abstract="false" lazy="false" discriminator-value="CarWheel" table="`carwheel`">
+ <meta attribute="eclassName">CarWheel</meta>
+ <meta attribute="epackage">http://www.example.com/car.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="carwheeldtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <list name="carTire" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carwheel_cartire">
+ <column name="`carwheel_cartire_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carwheel_cartire_idx`"/>
+ <one-to-many entity-name="CarTire"/>
+ </list>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..4239ed1c3
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="com.example.car.impl.CarFrameImpl" entity-name="CarFrame" abstract="false" lazy="false" table="`carframe`">
+ <meta attribute="eclassName" inherit="false">CarFrame</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="carWheel" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carframe_carwheel">
+ <column name="`carframe_carwheel_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carframe_carwheel_idx`"/>
+ <one-to-many entity-name="CarWheel"/>
+ </list>
+ <many-to-one name="carLinkRef" entity-name="CarLink" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="carframe_carlinkref" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`carlink_carlinkref_e_id`"/>
+ </many-to-one>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <class name="com.example.car.impl.CarLinkImpl" entity-name="CarLink" abstract="false" lazy="false" table="`carlink`">
+ <meta attribute="eclassName" inherit="false">CarLink</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id name="carLinkId" type="java.lang.String">
+ <column not-null="true" unique="false" name="`carlinkid`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <class name="com.example.car.impl.CarsListImpl" entity-name="CarsList" abstract="false" lazy="false" table="`carslist`">
+ <meta attribute="eclassName" inherit="false">CarsList</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="carType" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carslist_cartype">
+ <column name="`carslist_cartype_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carslist_cartype_idx`"/>
+ <one-to-many entity-name="CarType"/>
+ </list>
+ <list name="carLink" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carslist_carlink">
+ <column name="`carslist_carlink_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carslist_carlink_idx`"/>
+ <one-to-many entity-name="CarLink"/>
+ </list>
+ </class>
+ <class name="com.example.car.impl.CarTireImpl" entity-name="CarTire" abstract="false" lazy="false" table="`cartire`">
+ <meta attribute="eclassName" inherit="false">CarTire</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id name="name" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ </class>
+ <class name="com.example.car.impl.CarTypeImpl" entity-name="CarType" abstract="false" lazy="false" table="`cartype`">
+ <meta attribute="eclassName" inherit="false">CarType</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id name="carID" type="java.lang.String">
+ <column not-null="true" unique="false" name="`carid`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="carFrame" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="cartype_carframe">
+ <column name="`cartype_carframe_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`cartype_carframe_idx`"/>
+ <one-to-many entity-name="CarFrame"/>
+ </list>
+ </class>
+ <class name="com.example.car.impl.CarWheelImpl" entity-name="CarWheel" abstract="false" lazy="false" table="`carwheel`">
+ <meta attribute="eclassName" inherit="false">CarWheel</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="carTire" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carwheel_cartire">
+ <column name="`carwheel_cartire_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carwheel_cartire_idx`"/>
+ <one-to-many entity-name="CarTire"/>
+ </list>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..4239ed1c3
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CarAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="com.example.car.impl.CarFrameImpl" entity-name="CarFrame" abstract="false" lazy="false" table="`carframe`">
+ <meta attribute="eclassName" inherit="false">CarFrame</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="carWheel" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carframe_carwheel">
+ <column name="`carframe_carwheel_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carframe_carwheel_idx`"/>
+ <one-to-many entity-name="CarWheel"/>
+ </list>
+ <many-to-one name="carLinkRef" entity-name="CarLink" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="carframe_carlinkref" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`carlink_carlinkref_e_id`"/>
+ </many-to-one>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <class name="com.example.car.impl.CarLinkImpl" entity-name="CarLink" abstract="false" lazy="false" table="`carlink`">
+ <meta attribute="eclassName" inherit="false">CarLink</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id name="carLinkId" type="java.lang.String">
+ <column not-null="true" unique="false" name="`carlinkid`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <class name="com.example.car.impl.CarsListImpl" entity-name="CarsList" abstract="false" lazy="false" table="`carslist`">
+ <meta attribute="eclassName" inherit="false">CarsList</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="carType" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carslist_cartype">
+ <column name="`carslist_cartype_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carslist_cartype_idx`"/>
+ <one-to-many entity-name="CarType"/>
+ </list>
+ <list name="carLink" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carslist_carlink">
+ <column name="`carslist_carlink_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carslist_carlink_idx`"/>
+ <one-to-many entity-name="CarLink"/>
+ </list>
+ </class>
+ <class name="com.example.car.impl.CarTireImpl" entity-name="CarTire" abstract="false" lazy="false" table="`cartire`">
+ <meta attribute="eclassName" inherit="false">CarTire</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id name="name" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ </class>
+ <class name="com.example.car.impl.CarTypeImpl" entity-name="CarType" abstract="false" lazy="false" table="`cartype`">
+ <meta attribute="eclassName" inherit="false">CarType</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id name="carID" type="java.lang.String">
+ <column not-null="true" unique="false" name="`carid`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="carFrame" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="cartype_carframe">
+ <column name="`cartype_carframe_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`cartype_carframe_idx`"/>
+ <one-to-many entity-name="CarFrame"/>
+ </list>
+ </class>
+ <class name="com.example.car.impl.CarWheelImpl" entity-name="CarWheel" abstract="false" lazy="false" table="`carwheel`">
+ <meta attribute="eclassName" inherit="false">CarWheel</meta>
+ <meta attribute="epackage" inherit="false">http://www.example.com/car.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="carTire" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="carwheel_cartire">
+ <column name="`carwheel_cartire_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`carwheel_cartire_idx`"/>
+ <one-to-many entity-name="CarTire"/>
+ </list>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..ae02795c3
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.CatalogTypeImpl" entity-name="CatalogType" abstract="false" lazy="false" discriminator-value="CatalogType" table="`catalogtype`">
+ <meta attribute="eclassName">CatalogType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id name="name" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="catalogtypedtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="description" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`description`"/>
+ </property>
+ <list name="subCatalog" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="catalogtype_subcatalog">
+ <column name="`catalogtype_subcatalog_name`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`catalogtype_subcatalog_idx`"/>
+ <one-to-many entity-name="CatalogType"/>
+ </list>
+ <list name="product" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="catalogtype_product">
+ <column name="`catalogtype_product_name`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`catalogtype_product_idx`"/>
+ <one-to-many entity-name="ProductType"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.PriceTypeImpl" entity-name="PriceType" abstract="false" lazy="false" discriminator-value="PriceType" table="`pricetype`">
+ <meta attribute="eclassName">PriceType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="pricetypedtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="price" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`price`"/>
+ </property>
+ <property name="quantityTo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`quantityto`"/>
+ </property>
+ <many-to-one name="supplier" entity-name="SupplierType" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="pricetype_supplier" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`suppliertype_supplier_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.ProductTypeImpl" entity-name="ProductType" abstract="false" lazy="false" discriminator-value="ProductType" table="`producttype`">
+ <meta attribute="eclassName">ProductType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id name="code" type="java.lang.String">
+ <column not-null="true" unique="false" name="`code`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="producttypedtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="description" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`description`"/>
+ </property>
+ <list name="remark" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="producttype_remark">
+ <column name="`producttype_remark_code`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`producttype_remark_idx`"/>
+ <one-to-many entity-name="StringType"/>
+ </list>
+ <many-to-one name="price" entity-name="PriceType" lazy="false" cascade="all" foreign-key="producttype_price" insert="true" update="true" not-null="true" unique="true">
+ <column not-null="true" unique="false" name="`pricetype_price_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.StringTypeImpl" entity-name="StringType" abstract="false" lazy="false" discriminator-value="StringType" table="`stringtype`">
+ <meta attribute="eclassName">StringType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="stringtypedtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="value" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`value`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.SupplierTypeImpl" entity-name="SupplierType" abstract="false" lazy="false" discriminator-value="SupplierType" table="`suppliertype`">
+ <meta attribute="eclassName">SupplierType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="suppliertypedtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <property name="noOfEmployees" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`noofemployees`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..f2f4a71b7
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.CatalogTypeImpl" entity-name="CatalogType" abstract="false" lazy="false" table="`catalogtype`">
+ <meta attribute="eclassName" inherit="false">CatalogType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id name="name" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="description" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`description`"/>
+ </property>
+ <list name="subCatalog" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="catalogtype_subcatalog">
+ <column name="`catalogtype_subcatalog_name`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`catalogtype_subcatalog_idx`"/>
+ <one-to-many entity-name="CatalogType"/>
+ </list>
+ <list name="product" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="catalogtype_product">
+ <column name="`catalogtype_product_name`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`catalogtype_product_idx`"/>
+ <one-to-many entity-name="ProductType"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.PriceTypeImpl" entity-name="PriceType" abstract="false" lazy="false" table="`pricetype`">
+ <meta attribute="eclassName" inherit="false">PriceType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="price" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`price`"/>
+ </property>
+ <property name="quantityTo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`quantityto`"/>
+ </property>
+ <many-to-one name="supplier" entity-name="SupplierType" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="pricetype_supplier" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`suppliertype_supplier_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.ProductTypeImpl" entity-name="ProductType" abstract="false" lazy="false" table="`producttype`">
+ <meta attribute="eclassName" inherit="false">ProductType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id name="code" type="java.lang.String">
+ <column not-null="true" unique="false" name="`code`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="description" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`description`"/>
+ </property>
+ <list name="remark" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="producttype_remark">
+ <column name="`producttype_remark_code`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`producttype_remark_idx`"/>
+ <one-to-many entity-name="StringType"/>
+ </list>
+ <many-to-one name="price" entity-name="PriceType" lazy="false" cascade="all" foreign-key="producttype_price" insert="true" update="true" not-null="true" unique="true">
+ <column not-null="true" unique="false" name="`pricetype_price_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.StringTypeImpl" entity-name="StringType" abstract="false" lazy="false" table="`stringtype`">
+ <meta attribute="eclassName" inherit="false">StringType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="value" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`value`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.SupplierTypeImpl" entity-name="SupplierType" abstract="false" lazy="false" table="`suppliertype`">
+ <meta attribute="eclassName" inherit="false">SupplierType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <property name="noOfEmployees" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`noofemployees`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..f2f4a71b7
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/CatalogResourceAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.CatalogTypeImpl" entity-name="CatalogType" abstract="false" lazy="false" table="`catalogtype`">
+ <meta attribute="eclassName" inherit="false">CatalogType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id name="name" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="description" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`description`"/>
+ </property>
+ <list name="subCatalog" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="catalogtype_subcatalog">
+ <column name="`catalogtype_subcatalog_name`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`catalogtype_subcatalog_idx`"/>
+ <one-to-many entity-name="CatalogType"/>
+ </list>
+ <list name="product" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="catalogtype_product">
+ <column name="`catalogtype_product_name`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`catalogtype_product_idx`"/>
+ <one-to-many entity-name="ProductType"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.PriceTypeImpl" entity-name="PriceType" abstract="false" lazy="false" table="`pricetype`">
+ <meta attribute="eclassName" inherit="false">PriceType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="price" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`price`"/>
+ </property>
+ <property name="quantityTo" lazy="false" insert="true" update="true" not-null="false" unique="false" type="double">
+ <column not-null="false" unique="false" name="`quantityto`"/>
+ </property>
+ <many-to-one name="supplier" entity-name="SupplierType" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="pricetype_supplier" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`suppliertype_supplier_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.ProductTypeImpl" entity-name="ProductType" abstract="false" lazy="false" table="`producttype`">
+ <meta attribute="eclassName" inherit="false">ProductType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id name="code" type="java.lang.String">
+ <column not-null="true" unique="false" name="`code`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="description" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`description`"/>
+ </property>
+ <list name="remark" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="producttype_remark">
+ <column name="`producttype_remark_code`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`producttype_remark_idx`"/>
+ <one-to-many entity-name="StringType"/>
+ </list>
+ <many-to-one name="price" entity-name="PriceType" lazy="false" cascade="all" foreign-key="producttype_price" insert="true" update="true" not-null="true" unique="true">
+ <column not-null="true" unique="false" name="`pricetype_price_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.StringTypeImpl" entity-name="StringType" abstract="false" lazy="false" table="`stringtype`">
+ <meta attribute="eclassName" inherit="false">StringType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="value" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`value`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.catalog.impl.SupplierTypeImpl" entity-name="SupplierType" abstract="false" lazy="false" table="`suppliertype`">
+ <meta attribute="eclassName" inherit="false">SupplierType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/catalog</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <property name="noOfEmployees" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`noofemployees`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..e4730aa52
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimImpl" entity-name="Claim" abstract="false" lazy="false" discriminator-value="Claim" table="`pclm_nprc_clm`">
+ <meta attribute="eclassName">Claim</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/claim</meta>
+ <composite-id name="claimCompositeKey" class="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimCompositeKeyImpl">
+ <key-property name="claimNumber" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_nbr`" unique-key="c0"/>
+ </key-property>
+ <key-property name="claimExtensionNumber" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_ext_nbr`" unique-key="c0"/>
+ </key-property>
+ </composite-id>
+ <discriminator type="string">
+ <column name="dtype" index="PCLM_NPRC_CLMdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="billingName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`billing_name`" length="50"/>
+ </property>
+ <property name="claimGroupVSPId" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_grp_vsp_id`" length="3"/>
+ </property>
+ <property name="claimStatus" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_status`" length="2"/>
+ </property>
+ <bag name="claimLine" inverse="true" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="claim_claimline">
+ <column name="`clm_nbr`" not-null="false" unique="false"/>
+ <column name="`clm_ext_nbr`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="ClaimLine"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimLineImpl" entity-name="ClaimLine" abstract="false" lazy="false" discriminator-value="ClaimLine" table="`pclm_nprc_clmln`">
+ <meta attribute="eclassName">ClaimLine</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/claim</meta>
+ <composite-id name="claimLineCompositeKey" class="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimLineCompositeKeyImpl">
+ <key-many-to-one name="claim" entity-name="Claim" foreign-key="claimlinecompositekey_claim" lazy="false">
+ <column not-null="false" unique="false" name="`clm_nbr`" unique-key="c0"/>
+ <column not-null="false" unique="false" name="`clm_ext_nbr`" unique-key="c0"/>
+ </key-many-to-one>
+ <key-property name="claimLineNumber" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clmln_nbr`" unique-key="c0"/>
+ </key-property>
+ </composite-id>
+ <discriminator type="string">
+ <column name="dtype" index="PCLM_NPRC_CLMLNdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="claimLineBilledAmount" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigDecimal">
+ <column not-null="false" unique="false" name="`clmln_bill_amt`"/>
+ </property>
+ <property name="serviceCode" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`svc_cd`"/>
+ </property>
+ <property name="claimLineStatus" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clmln_status`" length="2"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..1858a6aab
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimImpl" entity-name="Claim" abstract="false" lazy="false" table="`pclm_nprc_clm`">
+ <meta attribute="eclassName" inherit="false">Claim</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/claim</meta>
+ <composite-id name="claimCompositeKey" class="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimCompositeKeyImpl" access="org.eclipse.emf.teneo.hibernate.mapping.property.EReferencePropertyHandler">
+ <meta attribute="eclassName" inherit="false">ClaimCompositeKey</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/claim</meta>
+ <key-property name="claimNumber" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_nbr`" unique-key="c0"/>
+ </key-property>
+ <key-property name="claimExtensionNumber" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_ext_nbr`" unique-key="c0"/>
+ </key-property>
+ </composite-id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="billingName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`billing_name`" length="50"/>
+ </property>
+ <property name="claimGroupVSPId" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_grp_vsp_id`" length="3"/>
+ </property>
+ <property name="claimStatus" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_status`" length="2"/>
+ </property>
+ <bag name="claimLine" inverse="true" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="claim_claimline">
+ <column name="`clm_nbr`" not-null="false" unique="false"/>
+ <column name="`clm_ext_nbr`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="ClaimLine"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimLineImpl" entity-name="ClaimLine" abstract="false" lazy="false" table="`pclm_nprc_clmln`">
+ <meta attribute="eclassName" inherit="false">ClaimLine</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/claim</meta>
+ <composite-id name="claimLineCompositeKey" class="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimLineCompositeKeyImpl" access="org.eclipse.emf.teneo.hibernate.mapping.property.EReferencePropertyHandler">
+ <meta attribute="eclassName" inherit="false">ClaimLineCompositeKey</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/claim</meta>
+ <key-many-to-one name="claim" entity-name="Claim" foreign-key="claimlinecompositekey_claim" lazy="false">
+ <column not-null="false" unique="false" name="`clm_nbr`" unique-key="c0"/>
+ <column not-null="false" unique="false" name="`clm_ext_nbr`" unique-key="c0"/>
+ </key-many-to-one>
+ <key-property name="claimLineNumber" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clmln_nbr`" unique-key="c0"/>
+ </key-property>
+ </composite-id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="claimLineBilledAmount" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigDecimal">
+ <column not-null="false" unique="false" name="`clmln_bill_amt`"/>
+ </property>
+ <property name="serviceCode" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`svc_cd`"/>
+ </property>
+ <property name="claimLineStatus" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clmln_status`" length="2"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..1858a6aab
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ClaimAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimImpl" entity-name="Claim" abstract="false" lazy="false" table="`pclm_nprc_clm`">
+ <meta attribute="eclassName" inherit="false">Claim</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/claim</meta>
+ <composite-id name="claimCompositeKey" class="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimCompositeKeyImpl" access="org.eclipse.emf.teneo.hibernate.mapping.property.EReferencePropertyHandler">
+ <meta attribute="eclassName" inherit="false">ClaimCompositeKey</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/claim</meta>
+ <key-property name="claimNumber" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_nbr`" unique-key="c0"/>
+ </key-property>
+ <key-property name="claimExtensionNumber" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_ext_nbr`" unique-key="c0"/>
+ </key-property>
+ </composite-id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="billingName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`billing_name`" length="50"/>
+ </property>
+ <property name="claimGroupVSPId" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_grp_vsp_id`" length="3"/>
+ </property>
+ <property name="claimStatus" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clm_status`" length="2"/>
+ </property>
+ <bag name="claimLine" inverse="true" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="claim_claimline">
+ <column name="`clm_nbr`" not-null="false" unique="false"/>
+ <column name="`clm_ext_nbr`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="ClaimLine"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimLineImpl" entity-name="ClaimLine" abstract="false" lazy="false" table="`pclm_nprc_clmln`">
+ <meta attribute="eclassName" inherit="false">ClaimLine</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/claim</meta>
+ <composite-id name="claimLineCompositeKey" class="org.eclipse.emf.teneo.samples.emf.sample.claim.impl.ClaimLineCompositeKeyImpl" access="org.eclipse.emf.teneo.hibernate.mapping.property.EReferencePropertyHandler">
+ <meta attribute="eclassName" inherit="false">ClaimLineCompositeKey</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/claim</meta>
+ <key-many-to-one name="claim" entity-name="Claim" foreign-key="claimlinecompositekey_claim" lazy="false">
+ <column not-null="false" unique="false" name="`clm_nbr`" unique-key="c0"/>
+ <column not-null="false" unique="false" name="`clm_ext_nbr`" unique-key="c0"/>
+ </key-many-to-one>
+ <key-property name="claimLineNumber" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clmln_nbr`" unique-key="c0"/>
+ </key-property>
+ </composite-id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="claimLineBilledAmount" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.math.BigDecimal">
+ <column not-null="false" unique="false" name="`clmln_bill_amt`"/>
+ </property>
+ <property name="serviceCode" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`svc_cd`"/>
+ </property>
+ <property name="claimLineStatus" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`clmln_status`" length="2"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..727f0ce8c
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,533 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="ecore.EDiagnosticChain" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EDiagnosticChain</param>
+ </typedef>
+ <typedef name="ecore.EEList" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EEList</param>
+ </typedef>
+ <typedef name="ecore.EEnumerator" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EEnumerator</param>
+ </typedef>
+ <typedef name="ecore.EFeatureMap" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EFeatureMap</param>
+ </typedef>
+ <typedef name="ecore.EFeatureMapEntry" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EFeatureMapEntry</param>
+ </typedef>
+ <typedef name="ecore.EJavaClass" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EJavaClass</param>
+ </typedef>
+ <typedef name="ecore.EMap" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EMap</param>
+ </typedef>
+ <typedef name="ecore.EResource" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EResource</param>
+ </typedef>
+ <typedef name="ecore.EResourceSet" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EResourceSet</param>
+ </typedef>
+ <typedef name="ecore.ETreeIterator" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">ETreeIterator</param>
+ </typedef>
+ <typedef name="type.Duration" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">Duration</param>
+ </typedef>
+ <typedef name="type.ENTITIES" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">ENTITIES</param>
+ </typedef>
+ <typedef name="type.ENTITIESBase" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">ENTITIESBase</param>
+ </typedef>
+ <typedef name="type.IDREFS" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">IDREFS</param>
+ </typedef>
+ <typedef name="type.IDREFSBase" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">IDREFSBase</param>
+ </typedef>
+ <typedef name="type.NMTOKENS" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">NMTOKENS</param>
+ </typedef>
+ <typedef name="type.NMTOKENSBase" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">NMTOKENSBase</param>
+ </typedef>
+ <typedef name="type.NOTATION" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">NOTATION</param>
+ </typedef>
+ <typedef name="type.QName" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">QName</param>
+ </typedef>
+ <typedef name="type.ShortObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">ShortObject</param>
+ </typedef>
+ <typedef name="type.UnsignedByteObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">UnsignedByteObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.ecore.impl.BasicEObjectImpl" entity-name="ecore_EObject" abstract="false" lazy="false" discriminator-value="ecore_EObject" table="`ecore_eobject`">
+ <meta attribute="eclassName">EObject</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="ecore_eobjectdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ </class>
+ <subclass name="org.eclipse.emf.ecore.impl.EModelElementImpl" entity-name="EModelElement" abstract="true" lazy="false" extends="ecore_EObject" discriminator-value="EModelElement">
+ <meta attribute="eclassName">EModelElement</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <list name="eAnnotations" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="emodelelement_eannotations">
+ <column name="`eannotation_emodelelement_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`emodelelement_eannotations_idx`"/>
+ <one-to-many entity-name="EAnnotation"/>
+ </list>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.ENamedElementImpl" entity-name="ENamedElement" abstract="true" lazy="false" extends="EModelElement" discriminator-value="ENamedElement">
+ <meta attribute="eclassName">ENamedElement</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.ETypedElementImpl" entity-name="ETypedElement" abstract="true" lazy="false" extends="ENamedElement" discriminator-value="ETypedElement">
+ <meta attribute="eclassName">ETypedElement</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <property name="ordered" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`ordered`"/>
+ </property>
+ <property name="unique" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`unique`"/>
+ </property>
+ <property name="lowerBound" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`lowerbound`"/>
+ </property>
+ <property name="upperBound" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`upperbound`"/>
+ </property>
+ <many-to-one name="eType" entity-name="EClassifier" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="etypedelement_etype" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`eclassifier_etype_e_id`"/>
+ </many-to-one>
+ <many-to-one name="eGenericType" entity-name="EGenericType" lazy="false" cascade="all" foreign-key="etypedelement_egenerictype" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`egenerictype_egenerictype_e_id`"/>
+ </many-to-one>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EStructuralFeatureImpl" entity-name="EStructuralFeature" abstract="true" lazy="false" extends="ETypedElement" discriminator-value="EStructuralFeature">
+ <meta attribute="eclassName">EStructuralFeature</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <property name="changeable" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`changeable`"/>
+ </property>
+ <property name="volatile" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`volatile`"/>
+ </property>
+ <property name="transient" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`transient`"/>
+ </property>
+ <property name="defaultValueLiteral" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`defaultvalueliteral`"/>
+ </property>
+ <property name="unsettable" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`unsettable`"/>
+ </property>
+ <property name="derived" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`derived`"/>
+ </property>
+ <many-to-one name="eContainingClass" entity-name="EClass" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="estructuralfeature_econtainingclass" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`estructuralfeature_econtainingclass_e_id`"/>
+ </many-to-one>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EAttributeImpl" entity-name="EAttribute" abstract="false" lazy="false" extends="EStructuralFeature" discriminator-value="EAttribute">
+ <meta attribute="eclassName">EAttribute</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <property name="iD" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EAnnotationImpl" entity-name="EAnnotation" abstract="false" lazy="false" extends="EModelElement" discriminator-value="EAnnotation">
+ <meta attribute="eclassName">EAnnotation</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <property name="source" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`source`"/>
+ </property>
+ <map name="details" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`eannotation_details_e_id`" not-null="false" unique="false"/>
+ </key>
+ <map-key type="java.lang.String"/>
+ <element type="java.lang.String"/>
+ </map>
+ <many-to-one name="eModelElement" entity-name="EModelElement" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eannotation_emodelelement" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eannotation_emodelelement_e_id`"/>
+ </many-to-one>
+ <list name="contents" table="`eannotation_contents`" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eannotation_contents">
+ <column name="`eannotation_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`eannotation_contents_idx`"/>
+ <many-to-any id-type="long" meta-type="string">
+ <column not-null="false" unique="false" name="`contents_type`"/>
+ <column not-null="false" unique="false" name="`contents_id`"/>
+ </many-to-any>
+ </list>
+ <list name="references" table="`eannotation_references`" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="eannotation_references">
+ <column name="`eannotation_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`eannotation_references_idx`"/>
+ <many-to-any id-type="long" meta-type="string">
+ <column not-null="false" unique="false" name="`references_type`"/>
+ <column not-null="false" unique="false" name="`references_id`"/>
+ </many-to-any>
+ </list>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EClassifierImpl" entity-name="EClassifier" abstract="true" lazy="false" extends="ENamedElement" discriminator-value="EClassifier">
+ <meta attribute="eclassName">EClassifier</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <property name="instanceClassName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`instanceclassname`"/>
+ </property>
+ <property name="instanceTypeName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`instancetypename`"/>
+ </property>
+ <many-to-one name="ePackage" entity-name="EPackage" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eclassifier_epackage" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eclassifier_epackage_e_id`"/>
+ </many-to-one>
+ <list name="eTypeParameters" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclassifier_etypeparameters">
+ <column name="`eclassifier_etypeparameters_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclassifier_etypeparameters_idx`"/>
+ <one-to-many entity-name="ETypeParameter"/>
+ </list>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EClassImpl" entity-name="EClass" abstract="false" lazy="false" extends="EClassifier" discriminator-value="EClass">
+ <meta attribute="eclassName">EClass</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <property name="abstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`abstract`"/>
+ </property>
+ <property name="interface" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`interface`"/>
+ </property>
+ <list name="eSuperTypes" lazy="true" cascade="merge,persist,save-update,lock,refresh" table="`eclass_eclass`">
+ <key/>
+ <list-index column="`eclass_esupertypes_idx`"/>
+ <many-to-many entity-name="EClass" unique="false" foreign-key="eclass_esupertypes"/>
+ </list>
+ <list name="eOperations" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclass_eoperations">
+ <column name="`eoperation_econtainingclass_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclass_eoperations_idx`"/>
+ <one-to-many entity-name="EOperation"/>
+ </list>
+ <list name="eStructuralFeatures" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclass_estructuralfeatures">
+ <column name="`estructuralfeature_econtainingclass_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclass_estructuralfeatures_idx`"/>
+ <one-to-many entity-name="EStructuralFeature"/>
+ </list>
+ <list name="eGenericSuperTypes" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclass_egenericsupertypes">
+ <column name="`eclass_egenericsupertypes_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclass_egenericsupertypes_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EDataTypeImpl" entity-name="EDataType" abstract="false" lazy="false" extends="EClassifier" discriminator-value="EDataType">
+ <meta attribute="eclassName">EDataType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <property name="serializable" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`serializable`"/>
+ </property>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EEnumImpl" entity-name="EEnum" abstract="false" lazy="false" extends="EDataType" discriminator-value="EEnum">
+ <meta attribute="eclassName">EEnum</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <list name="eLiterals" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eenum_eliterals">
+ <column name="`eenumliteral_eenum_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eenum_eliterals_idx`"/>
+ <one-to-many entity-name="EEnumLiteral"/>
+ </list>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EEnumLiteralImpl" entity-name="EEnumLiteral" abstract="false" lazy="false" extends="ENamedElement" discriminator-value="EEnumLiteral">
+ <meta attribute="eclassName">EEnumLiteral</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`value`"/>
+ </property>
+ <property name="literal" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`literal`"/>
+ </property>
+ <many-to-one name="eEnum" entity-name="EEnum" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eenumliteral_eenum" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eenumliteral_eenum_e_id`"/>
+ </many-to-one>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EFactoryImpl" entity-name="EFactory" abstract="false" lazy="false" extends="EModelElement" discriminator-value="EFactory">
+ <meta attribute="eclassName">EFactory</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EOperationImpl" entity-name="EOperation" abstract="false" lazy="false" extends="ETypedElement" discriminator-value="EOperation">
+ <meta attribute="eclassName">EOperation</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <many-to-one name="eContainingClass" entity-name="EClass" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eoperation_econtainingclass" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eoperation_econtainingclass_e_id`"/>
+ </many-to-one>
+ <list name="eTypeParameters" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eoperation_etypeparameters">
+ <column name="`eoperation_etypeparameters_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_etypeparameters_idx`"/>
+ <one-to-many entity-name="ETypeParameter"/>
+ </list>
+ <list name="eParameters" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eoperation_eparameters">
+ <column name="`eparameter_eoperation_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_eparameters_idx`"/>
+ <one-to-many entity-name="EParameter"/>
+ </list>
+ <list name="eExceptions" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="eoperation_eexceptions">
+ <column name="`eoperation_eexceptions_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_eexceptions_idx`"/>
+ <one-to-many entity-name="EClassifier"/>
+ </list>
+ <list name="eGenericExceptions" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eoperation_egenericexceptions">
+ <column name="`eoperation_egenericexceptions_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_egenericexceptions_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EPackageImpl" entity-name="EPackage" abstract="false" lazy="false" extends="ENamedElement" discriminator-value="EPackage">
+ <meta attribute="eclassName">EPackage</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <property name="nsURI" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`nsuri`"/>
+ </property>
+ <property name="nsPrefix" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`nsprefix`"/>
+ </property>
+ <list name="eClassifiers" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="epackage_eclassifiers">
+ <column name="`eclassifier_epackage_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`epackage_eclassifiers_idx`"/>
+ <one-to-many entity-name="EClassifier"/>
+ </list>
+ <list name="eSubpackages" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="epackage_esubpackages">
+ <column name="`epackage_esuperpackage_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`epackage_esubpackages_idx`"/>
+ <one-to-many entity-name="EPackage"/>
+ </list>
+ <many-to-one name="eSuperPackage" entity-name="EPackage" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="epackage_esuperpackage" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`epackage_esuperpackage_e_id`"/>
+ </many-to-one>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EParameterImpl" entity-name="EParameter" abstract="false" lazy="false" extends="ETypedElement" discriminator-value="EParameter">
+ <meta attribute="eclassName">EParameter</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <many-to-one name="eOperation" entity-name="EOperation" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eparameter_eoperation" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eparameter_eoperation_e_id`"/>
+ </many-to-one>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EReferenceImpl" entity-name="EReference" abstract="false" lazy="false" extends="EStructuralFeature" discriminator-value="EReference">
+ <meta attribute="eclassName">EReference</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <property name="containment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`containment`"/>
+ </property>
+ <property name="resolveProxies" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`resolveproxies`"/>
+ </property>
+ <many-to-one name="eOpposite" entity-name="EReference" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ereference_eopposite" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`ereference_eopposite_e_id`"/>
+ </many-to-one>
+ <list name="eKeys" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="ereference_ekeys">
+ <column name="`ereference_ekeys_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`ereference_ekeys_idx`"/>
+ <one-to-many entity-name="EAttribute"/>
+ </list>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.EGenericTypeImpl" entity-name="EGenericType" abstract="false" lazy="false" extends="ecore_EObject" discriminator-value="EGenericType">
+ <meta attribute="eclassName">EGenericType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <many-to-one name="eUpperBound" entity-name="EGenericType" lazy="false" cascade="all" foreign-key="egenerictype_eupperbound" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`egenerictype_eupperbound_e_id`"/>
+ </many-to-one>
+ <list name="eTypeArguments" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="egenerictype_etypearguments">
+ <column name="`egenerictype_etypearguments_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`egenerictype_etypearguments_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ <many-to-one name="eLowerBound" entity-name="EGenericType" lazy="false" cascade="all" foreign-key="egenerictype_elowerbound" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`egenerictype_elowerbound_e_id`"/>
+ </many-to-one>
+ <many-to-one name="eTypeParameter" entity-name="ETypeParameter" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="egenerictype_etypeparameter" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`etypeparameter_etypeparameter_e_id`"/>
+ </many-to-one>
+ <many-to-one name="eClassifier" entity-name="EClassifier" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="egenerictype_eclassifier" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`eclassifier_eclassifier_e_id`"/>
+ </many-to-one>
+ </subclass>
+ <subclass name="org.eclipse.emf.ecore.impl.ETypeParameterImpl" entity-name="ETypeParameter" abstract="false" lazy="false" extends="ENamedElement" discriminator-value="ETypeParameter">
+ <meta attribute="eclassName">ETypeParameter</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <list name="eBounds" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="etypeparameter_ebounds">
+ <column name="`etypeparameter_ebounds_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`etypeparameter_ebounds_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ </subclass>
+ <class name="org.eclipse.emf.ecore.xml.type.impl.AnyTypeImpl" entity-name="AnyType" abstract="false" lazy="false" discriminator-value="AnyType" table="`anytype`">
+ <meta attribute="eclassName">AnyType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2003/XMLType</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="anytypedtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <list name="mixed" table="`anytype_mixed`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`anytype_mixed_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`anytype_mixed_idx`"/>
+ <one-to-many entity-name="AnyType_mixed"/>
+ </list>
+ <list name="anyAttribute" table="`anytype_anyattribute`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`anytype_anyattribute_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`anytype_anyattribute_idx`"/>
+ <one-to-many entity-name="AnyType_anyAttribute"/>
+ </list>
+ </class>
+ <class entity-name="AnyType_mixed" lazy="false" table="`anytype_mixed`">
+ <meta attribute="featureMap">AnyType</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <list name="any" table="`mixed_anytype_any`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`mixed_anytype_any_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`mixed_anytype_any_idx`"/>
+ <one-to-many entity-name="AnyType_any"/>
+ </list>
+ <list name="anyAttribute" table="`mixed_anytype_anyattribute`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`mixed_anytype_anyattribute_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`mixed_anytype_anyattribute_idx`"/>
+ <one-to-many entity-name="AnyType_anyAttribute"/>
+ </list>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class entity-name="AnyType_anyAttribute" lazy="false" table="`anytype_anyattribute`">
+ <meta attribute="featureMap">AnyType</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ </class>
+ <class entity-name="AnyType_any" lazy="false" table="`anytype_any`">
+ <meta attribute="featureMap">AnyType</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="any_fme_any_data" type="java.lang.String"/>
+ <any id-type="long" meta-type="string" name="any_fme_any_reference" cascade="all">
+ <column not-null="false" unique="false" name="`any_type`"/>
+ <column not-null="false" unique="false" name="`any_id`"/>
+ </any>
+ </class>
+ <class name="org.eclipse.emf.ecore.xml.type.impl.ProcessingInstructionImpl" entity-name="ProcessingInstruction" abstract="false" lazy="false" discriminator-value="ProcessingInstruction" table="`processinginstruction`">
+ <meta attribute="eclassName">ProcessingInstruction</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2003/XMLType</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="processinginstructiondtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="data" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`data`"/>
+ </property>
+ <property name="target" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`target`"/>
+ </property>
+ </class>
+ <subclass name="org.eclipse.emf.ecore.xml.type.impl.SimpleAnyTypeImpl" entity-name="SimpleAnyType" abstract="false" lazy="false" extends="AnyType" discriminator-value="SimpleAnyType">
+ <meta attribute="eclassName">SimpleAnyType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2003/XMLType</meta>
+ <many-to-one name="instanceType" entity-name="EDataType" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="simpleanytype_instancetype" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`edatatype_instancetype_e_id`"/>
+ </many-to-one>
+ </subclass>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..6b441b3aa
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,581 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="ecore.EDiagnosticChain" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EDiagnosticChain</param>
+ </typedef>
+ <typedef name="ecore.EEList" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EEList</param>
+ </typedef>
+ <typedef name="ecore.EEnumerator" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EEnumerator</param>
+ </typedef>
+ <typedef name="ecore.EFeatureMap" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EFeatureMap</param>
+ </typedef>
+ <typedef name="ecore.EFeatureMapEntry" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EFeatureMapEntry</param>
+ </typedef>
+ <typedef name="ecore.EJavaClass" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EJavaClass</param>
+ </typedef>
+ <typedef name="ecore.EMap" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EMap</param>
+ </typedef>
+ <typedef name="ecore.EResource" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EResource</param>
+ </typedef>
+ <typedef name="ecore.EResourceSet" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EResourceSet</param>
+ </typedef>
+ <typedef name="ecore.ETreeIterator" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">ETreeIterator</param>
+ </typedef>
+ <typedef name="type.Duration" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">Duration</param>
+ </typedef>
+ <typedef name="type.ENTITIES" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">ENTITIES</param>
+ </typedef>
+ <typedef name="type.ENTITIESBase" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">ENTITIESBase</param>
+ </typedef>
+ <typedef name="type.IDREFS" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">IDREFS</param>
+ </typedef>
+ <typedef name="type.IDREFSBase" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">IDREFSBase</param>
+ </typedef>
+ <typedef name="type.NMTOKENS" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">NMTOKENS</param>
+ </typedef>
+ <typedef name="type.NMTOKENSBase" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">NMTOKENSBase</param>
+ </typedef>
+ <typedef name="type.NOTATION" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">NOTATION</param>
+ </typedef>
+ <typedef name="type.QName" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">QName</param>
+ </typedef>
+ <typedef name="type.ShortObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">ShortObject</param>
+ </typedef>
+ <typedef name="type.UnsignedByteObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">UnsignedByteObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.ecore.impl.BasicEObjectImpl" entity-name="ecore_EObject" abstract="false" lazy="false" table="`ecore_eobject`">
+ <meta attribute="eclassName">EObject</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ </class>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EModelElementImpl" entity-name="EModelElement" abstract="true" lazy="false" extends="ecore_EObject" table="`emodelelement`">
+ <meta attribute="eclassName">EModelElement</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`ecore_eobject_e_id`"/>
+ </key>
+ <list name="eAnnotations" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="emodelelement_eannotations">
+ <column name="`eannotation_emodelelement_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`emodelelement_eannotations_idx`"/>
+ <one-to-many entity-name="EAnnotation"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.ENamedElementImpl" entity-name="ENamedElement" abstract="true" lazy="false" extends="EModelElement" table="`enamedelement`">
+ <meta attribute="eclassName">ENamedElement</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`emodelelement_e_id`"/>
+ </key>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.ETypedElementImpl" entity-name="ETypedElement" abstract="true" lazy="false" extends="ENamedElement" table="`etypedelement`">
+ <meta attribute="eclassName">ETypedElement</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`enamedelement_e_id`"/>
+ </key>
+ <property name="ordered" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`ordered`"/>
+ </property>
+ <property name="unique" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`unique`"/>
+ </property>
+ <property name="lowerBound" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`lowerbound`"/>
+ </property>
+ <property name="upperBound" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`upperbound`"/>
+ </property>
+ <many-to-one name="eType" entity-name="EClassifier" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="etypedelement_etype" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`eclassifier_etype_e_id`"/>
+ </many-to-one>
+ <many-to-one name="eGenericType" entity-name="EGenericType" lazy="false" cascade="all" foreign-key="etypedelement_egenerictype" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`egenerictype_egenerictype_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EStructuralFeatureImpl" entity-name="EStructuralFeature" abstract="true" lazy="false" extends="ETypedElement" table="`estructuralfeature`">
+ <meta attribute="eclassName">EStructuralFeature</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`etypedelement_e_id`"/>
+ </key>
+ <property name="changeable" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`changeable`"/>
+ </property>
+ <property name="volatile" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`volatile`"/>
+ </property>
+ <property name="transient" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`transient`"/>
+ </property>
+ <property name="defaultValueLiteral" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`defaultvalueliteral`"/>
+ </property>
+ <property name="unsettable" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`unsettable`"/>
+ </property>
+ <property name="derived" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`derived`"/>
+ </property>
+ <many-to-one name="eContainingClass" entity-name="EClass" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="estructuralfeature_econtainingclass" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`estructuralfeature_econtainingclass_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EAttributeImpl" entity-name="EAttribute" abstract="false" lazy="false" extends="EStructuralFeature" table="`eattribute`">
+ <meta attribute="eclassName">EAttribute</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`estructuralfeature_e_id`"/>
+ </key>
+ <property name="iD" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EAnnotationImpl" entity-name="EAnnotation" abstract="false" lazy="false" extends="EModelElement" table="`eannotation`">
+ <meta attribute="eclassName">EAnnotation</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`emodelelement_e_id`"/>
+ </key>
+ <property name="source" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`source`"/>
+ </property>
+ <map name="details" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`eannotation_details_e_id`" not-null="false" unique="false"/>
+ </key>
+ <map-key type="java.lang.String"/>
+ <element type="java.lang.String"/>
+ </map>
+ <many-to-one name="eModelElement" entity-name="EModelElement" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eannotation_emodelelement" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eannotation_emodelelement_e_id`"/>
+ </many-to-one>
+ <list name="contents" table="`eannotation_contents`" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eannotation_contents">
+ <column name="`eannotation_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`eannotation_contents_idx`"/>
+ <many-to-any id-type="long" meta-type="string">
+ <column not-null="false" unique="false" name="`contents_type`"/>
+ <column not-null="false" unique="false" name="`contents_id`"/>
+ </many-to-any>
+ </list>
+ <list name="references" table="`eannotation_references`" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="eannotation_references">
+ <column name="`eannotation_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`eannotation_references_idx`"/>
+ <many-to-any id-type="long" meta-type="string">
+ <column not-null="false" unique="false" name="`references_type`"/>
+ <column not-null="false" unique="false" name="`references_id`"/>
+ </many-to-any>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EClassifierImpl" entity-name="EClassifier" abstract="true" lazy="false" extends="ENamedElement" table="`eclassifier`">
+ <meta attribute="eclassName">EClassifier</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`enamedelement_e_id`"/>
+ </key>
+ <property name="instanceClassName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`instanceclassname`"/>
+ </property>
+ <property name="instanceTypeName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`instancetypename`"/>
+ </property>
+ <many-to-one name="ePackage" entity-name="EPackage" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eclassifier_epackage" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eclassifier_epackage_e_id`"/>
+ </many-to-one>
+ <list name="eTypeParameters" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclassifier_etypeparameters">
+ <column name="`eclassifier_etypeparameters_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclassifier_etypeparameters_idx`"/>
+ <one-to-many entity-name="ETypeParameter"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EClassImpl" entity-name="EClass" abstract="false" lazy="false" extends="EClassifier" table="`eclass`">
+ <meta attribute="eclassName">EClass</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`eclassifier_e_id`"/>
+ </key>
+ <property name="abstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`abstract`"/>
+ </property>
+ <property name="interface" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`interface`"/>
+ </property>
+ <list name="eSuperTypes" lazy="true" cascade="merge,persist,save-update,lock,refresh" table="`eclass_eclass`">
+ <key/>
+ <list-index column="`eclass_esupertypes_idx`"/>
+ <many-to-many entity-name="EClass" unique="false" foreign-key="eclass_esupertypes"/>
+ </list>
+ <list name="eOperations" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclass_eoperations">
+ <column name="`eoperation_econtainingclass_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclass_eoperations_idx`"/>
+ <one-to-many entity-name="EOperation"/>
+ </list>
+ <list name="eStructuralFeatures" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclass_estructuralfeatures">
+ <column name="`estructuralfeature_econtainingclass_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclass_estructuralfeatures_idx`"/>
+ <one-to-many entity-name="EStructuralFeature"/>
+ </list>
+ <list name="eGenericSuperTypes" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclass_egenericsupertypes">
+ <column name="`eclass_egenericsupertypes_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclass_egenericsupertypes_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EDataTypeImpl" entity-name="EDataType" abstract="false" lazy="false" extends="EClassifier" table="`edatatype`">
+ <meta attribute="eclassName">EDataType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`eclassifier_e_id`"/>
+ </key>
+ <property name="serializable" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`serializable`"/>
+ </property>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EEnumImpl" entity-name="EEnum" abstract="false" lazy="false" extends="EDataType" table="`eenum`">
+ <meta attribute="eclassName">EEnum</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`edatatype_e_id`"/>
+ </key>
+ <list name="eLiterals" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eenum_eliterals">
+ <column name="`eenumliteral_eenum_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eenum_eliterals_idx`"/>
+ <one-to-many entity-name="EEnumLiteral"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EEnumLiteralImpl" entity-name="EEnumLiteral" abstract="false" lazy="false" extends="ENamedElement" table="`eenumliteral`">
+ <meta attribute="eclassName">EEnumLiteral</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`enamedelement_e_id`"/>
+ </key>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`value`"/>
+ </property>
+ <property name="literal" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`literal`"/>
+ </property>
+ <many-to-one name="eEnum" entity-name="EEnum" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eenumliteral_eenum" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eenumliteral_eenum_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EFactoryImpl" entity-name="EFactory" abstract="false" lazy="false" extends="EModelElement" table="`efactory`">
+ <meta attribute="eclassName">EFactory</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`emodelelement_e_id`"/>
+ </key>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EOperationImpl" entity-name="EOperation" abstract="false" lazy="false" extends="ETypedElement" table="`eoperation`">
+ <meta attribute="eclassName">EOperation</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`etypedelement_e_id`"/>
+ </key>
+ <many-to-one name="eContainingClass" entity-name="EClass" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eoperation_econtainingclass" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eoperation_econtainingclass_e_id`"/>
+ </many-to-one>
+ <list name="eTypeParameters" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eoperation_etypeparameters">
+ <column name="`eoperation_etypeparameters_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_etypeparameters_idx`"/>
+ <one-to-many entity-name="ETypeParameter"/>
+ </list>
+ <list name="eParameters" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eoperation_eparameters">
+ <column name="`eparameter_eoperation_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_eparameters_idx`"/>
+ <one-to-many entity-name="EParameter"/>
+ </list>
+ <list name="eExceptions" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="eoperation_eexceptions">
+ <column name="`eoperation_eexceptions_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_eexceptions_idx`"/>
+ <one-to-many entity-name="EClassifier"/>
+ </list>
+ <list name="eGenericExceptions" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eoperation_egenericexceptions">
+ <column name="`eoperation_egenericexceptions_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_egenericexceptions_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EPackageImpl" entity-name="EPackage" abstract="false" lazy="false" extends="ENamedElement" table="`epackage`">
+ <meta attribute="eclassName">EPackage</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`enamedelement_e_id`"/>
+ </key>
+ <property name="nsURI" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`nsuri`"/>
+ </property>
+ <property name="nsPrefix" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`nsprefix`"/>
+ </property>
+ <list name="eClassifiers" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="epackage_eclassifiers">
+ <column name="`eclassifier_epackage_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`epackage_eclassifiers_idx`"/>
+ <one-to-many entity-name="EClassifier"/>
+ </list>
+ <list name="eSubpackages" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="epackage_esubpackages">
+ <column name="`epackage_esuperpackage_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`epackage_esubpackages_idx`"/>
+ <one-to-many entity-name="EPackage"/>
+ </list>
+ <many-to-one name="eSuperPackage" entity-name="EPackage" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="epackage_esuperpackage" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`epackage_esuperpackage_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EParameterImpl" entity-name="EParameter" abstract="false" lazy="false" extends="ETypedElement" table="`eparameter`">
+ <meta attribute="eclassName">EParameter</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`etypedelement_e_id`"/>
+ </key>
+ <many-to-one name="eOperation" entity-name="EOperation" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eparameter_eoperation" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eparameter_eoperation_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EReferenceImpl" entity-name="EReference" abstract="false" lazy="false" extends="EStructuralFeature" table="`ereference`">
+ <meta attribute="eclassName">EReference</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`estructuralfeature_e_id`"/>
+ </key>
+ <property name="containment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`containment`"/>
+ </property>
+ <property name="resolveProxies" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`resolveproxies`"/>
+ </property>
+ <many-to-one name="eOpposite" entity-name="EReference" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ereference_eopposite" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`ereference_eopposite_e_id`"/>
+ </many-to-one>
+ <list name="eKeys" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="ereference_ekeys">
+ <column name="`ereference_ekeys_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`ereference_ekeys_idx`"/>
+ <one-to-many entity-name="EAttribute"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EGenericTypeImpl" entity-name="EGenericType" abstract="false" lazy="false" extends="ecore_EObject" table="`egenerictype`">
+ <meta attribute="eclassName">EGenericType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`ecore_eobject_e_id`"/>
+ </key>
+ <many-to-one name="eUpperBound" entity-name="EGenericType" lazy="false" cascade="all" foreign-key="egenerictype_eupperbound" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`egenerictype_eupperbound_e_id`"/>
+ </many-to-one>
+ <list name="eTypeArguments" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="egenerictype_etypearguments">
+ <column name="`egenerictype_etypearguments_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`egenerictype_etypearguments_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ <many-to-one name="eLowerBound" entity-name="EGenericType" lazy="false" cascade="all" foreign-key="egenerictype_elowerbound" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`egenerictype_elowerbound_e_id`"/>
+ </many-to-one>
+ <many-to-one name="eTypeParameter" entity-name="ETypeParameter" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="egenerictype_etypeparameter" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`etypeparameter_etypeparameter_e_id`"/>
+ </many-to-one>
+ <many-to-one name="eClassifier" entity-name="EClassifier" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="egenerictype_eclassifier" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`eclassifier_eclassifier_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.ETypeParameterImpl" entity-name="ETypeParameter" abstract="false" lazy="false" extends="ENamedElement" table="`etypeparameter`">
+ <meta attribute="eclassName">ETypeParameter</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`enamedelement_e_id`"/>
+ </key>
+ <list name="eBounds" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="etypeparameter_ebounds">
+ <column name="`etypeparameter_ebounds_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`etypeparameter_ebounds_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ </joined-subclass>
+ <class name="org.eclipse.emf.ecore.xml.type.impl.AnyTypeImpl" entity-name="AnyType" abstract="false" lazy="false" table="`anytype`">
+ <meta attribute="eclassName">AnyType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2003/XMLType</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <list name="mixed" table="`anytype_mixed`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`anytype_mixed_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`anytype_mixed_idx`"/>
+ <one-to-many entity-name="AnyType_mixed"/>
+ </list>
+ <list name="anyAttribute" table="`anytype_anyattribute`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`anytype_anyattribute_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`anytype_anyattribute_idx`"/>
+ <one-to-many entity-name="AnyType_anyAttribute"/>
+ </list>
+ </class>
+ <class entity-name="AnyType_mixed" lazy="false" table="`anytype_mixed`">
+ <meta attribute="featureMap">AnyType</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <list name="any" table="`mixed_anytype_any`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`mixed_anytype_any_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`mixed_anytype_any_idx`"/>
+ <one-to-many entity-name="AnyType_any"/>
+ </list>
+ <list name="anyAttribute" table="`mixed_anytype_anyattribute`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`mixed_anytype_anyattribute_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`mixed_anytype_anyattribute_idx`"/>
+ <one-to-many entity-name="AnyType_anyAttribute"/>
+ </list>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class entity-name="AnyType_anyAttribute" lazy="false" table="`anytype_anyattribute`">
+ <meta attribute="featureMap">AnyType</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ </class>
+ <class entity-name="AnyType_any" lazy="false" table="`anytype_any`">
+ <meta attribute="featureMap">AnyType</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="any_fme_any_data" type="java.lang.String"/>
+ <any id-type="long" meta-type="string" name="any_fme_any_reference" cascade="all">
+ <column not-null="false" unique="false" name="`any_type`"/>
+ <column not-null="false" unique="false" name="`any_id`"/>
+ </any>
+ </class>
+ <class name="org.eclipse.emf.ecore.xml.type.impl.ProcessingInstructionImpl" entity-name="ProcessingInstruction" abstract="false" lazy="false" table="`processinginstruction`">
+ <meta attribute="eclassName">ProcessingInstruction</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2003/XMLType</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="data" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`data`"/>
+ </property>
+ <property name="target" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`target`"/>
+ </property>
+ </class>
+ <joined-subclass name="org.eclipse.emf.ecore.xml.type.impl.SimpleAnyTypeImpl" entity-name="SimpleAnyType" abstract="false" lazy="false" extends="AnyType" table="`simpleanytype`">
+ <meta attribute="eclassName">SimpleAnyType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2003/XMLType</meta>
+ <key>
+ <column name="`anytype_e_id`"/>
+ </key>
+ <many-to-one name="instanceType" entity-name="EDataType" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="simpleanytype_instancetype" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`edatatype_instancetype_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..f00ce5948
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EcoreAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,583 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="ecore.EDiagnosticChain" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EDiagnosticChain</param>
+ </typedef>
+ <typedef name="ecore.EEList" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EEList</param>
+ </typedef>
+ <typedef name="ecore.EEnumerator" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EEnumerator</param>
+ </typedef>
+ <typedef name="ecore.EFeatureMap" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EFeatureMap</param>
+ </typedef>
+ <typedef name="ecore.EFeatureMapEntry" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EFeatureMapEntry</param>
+ </typedef>
+ <typedef name="ecore.EJavaClass" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EJavaClass</param>
+ </typedef>
+ <typedef name="ecore.EMap" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EMap</param>
+ </typedef>
+ <typedef name="ecore.EResource" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EResource</param>
+ </typedef>
+ <typedef name="ecore.EResourceSet" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">EResourceSet</param>
+ </typedef>
+ <typedef name="ecore.ETreeIterator" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2002/Ecore</param>
+ <param name="edatatype">ETreeIterator</param>
+ </typedef>
+ <typedef name="type.Duration" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">Duration</param>
+ </typedef>
+ <typedef name="type.ENTITIES" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">ENTITIES</param>
+ </typedef>
+ <typedef name="type.ENTITIESBase" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">ENTITIESBase</param>
+ </typedef>
+ <typedef name="type.IDREFS" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">IDREFS</param>
+ </typedef>
+ <typedef name="type.IDREFSBase" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">IDREFSBase</param>
+ </typedef>
+ <typedef name="type.NMTOKENS" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">NMTOKENS</param>
+ </typedef>
+ <typedef name="type.NMTOKENSBase" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">NMTOKENSBase</param>
+ </typedef>
+ <typedef name="type.NOTATION" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">NOTATION</param>
+ </typedef>
+ <typedef name="type.QName" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">QName</param>
+ </typedef>
+ <typedef name="type.ShortObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">ShortObject</param>
+ </typedef>
+ <typedef name="type.UnsignedByteObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/2003/XMLType</param>
+ <param name="edatatype">UnsignedByteObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.ecore.impl.BasicEObjectImpl" entity-name="ecore_EObject" abstract="false" lazy="false" table="`ecore_eobject`">
+ <meta attribute="eclassName">EObject</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ </class>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EModelElementImpl" entity-name="EModelElement" abstract="true" lazy="false" extends="ecore_EObject" table="`emodelelement`">
+ <meta attribute="eclassName">EModelElement</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`ecore_eobject_e_id`"/>
+ </key>
+ <list name="eAnnotations" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="emodelelement_eannotations">
+ <column name="`eannotation_emodelelement_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`emodelelement_eannotations_idx`"/>
+ <one-to-many entity-name="EAnnotation"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.ENamedElementImpl" entity-name="ENamedElement" abstract="true" lazy="false" extends="EModelElement" table="`enamedelement`">
+ <meta attribute="eclassName">ENamedElement</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`emodelelement_e_id`"/>
+ </key>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.ETypedElementImpl" entity-name="ETypedElement" abstract="true" lazy="false" extends="ENamedElement" table="`etypedelement`">
+ <meta attribute="eclassName">ETypedElement</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`enamedelement_e_id`"/>
+ </key>
+ <property name="ordered" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`ordered`"/>
+ </property>
+ <property name="unique" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`unique`"/>
+ </property>
+ <property name="lowerBound" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`lowerbound`"/>
+ </property>
+ <property name="upperBound" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`upperbound`"/>
+ </property>
+ <many-to-one name="eType" entity-name="EClassifier" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="etypedelement_etype" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`eclassifier_etype_e_id`"/>
+ </many-to-one>
+ <many-to-one name="eGenericType" entity-name="EGenericType" lazy="false" cascade="all" foreign-key="etypedelement_egenerictype" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`egenerictype_egenerictype_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EStructuralFeatureImpl" entity-name="EStructuralFeature" abstract="true" lazy="false" extends="ETypedElement" table="`estructuralfeature`">
+ <meta attribute="eclassName">EStructuralFeature</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`etypedelement_e_id`"/>
+ </key>
+ <property name="changeable" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`changeable`"/>
+ </property>
+ <property name="volatile" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`volatile`"/>
+ </property>
+ <property name="transient" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`transient`"/>
+ </property>
+ <property name="defaultValueLiteral" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`defaultvalueliteral`"/>
+ </property>
+ <property name="unsettable" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`unsettable`"/>
+ </property>
+ <property name="derived" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`derived`"/>
+ </property>
+ <many-to-one name="eContainingClass" entity-name="EClass" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="estructuralfeature_econtainingclass" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`estructuralfeature_econtainingclass_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EAttributeImpl" entity-name="EAttribute" abstract="false" lazy="false" extends="EStructuralFeature" table="`eattribute`">
+ <meta attribute="eclassName">EAttribute</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`estructuralfeature_e_id`"/>
+ </key>
+ <property name="iD" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EAnnotationImpl" entity-name="EAnnotation" abstract="false" lazy="false" extends="EModelElement" table="`eannotation`">
+ <meta attribute="eclassName">EAnnotation</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`emodelelement_e_id`"/>
+ </key>
+ <property name="source" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`source`"/>
+ </property>
+ <map name="details" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`eannotation_details_e_id`" not-null="false" unique="false"/>
+ </key>
+ <map-key type="java.lang.String"/>
+ <element type="java.lang.String"/>
+ </map>
+ <many-to-one name="eModelElement" entity-name="EModelElement" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eannotation_emodelelement" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eannotation_emodelelement_e_id`"/>
+ </many-to-one>
+ <list name="contents" table="`eannotation_contents`" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eannotation_contents">
+ <column name="`eannotation_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`eannotation_contents_idx`"/>
+ <many-to-any id-type="long" meta-type="string">
+ <column not-null="false" unique="false" name="`contents_type`"/>
+ <column not-null="false" unique="false" name="`contents_id`"/>
+ </many-to-any>
+ </list>
+ <list name="references" table="`eannotation_references`" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="eannotation_references">
+ <column name="`eannotation_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`eannotation_references_idx`"/>
+ <many-to-any id-type="long" meta-type="string">
+ <column not-null="false" unique="false" name="`references_type`"/>
+ <column not-null="false" unique="false" name="`references_id`"/>
+ </many-to-any>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EClassifierImpl" entity-name="EClassifier" abstract="true" lazy="false" extends="ENamedElement" table="`eclassifier`">
+ <meta attribute="eclassName">EClassifier</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`enamedelement_e_id`"/>
+ </key>
+ <property name="instanceClassName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`instanceclassname`"/>
+ </property>
+ <property name="instanceTypeName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`instancetypename`"/>
+ </property>
+ <many-to-one name="ePackage" entity-name="EPackage" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eclassifier_epackage" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eclassifier_epackage_e_id`"/>
+ </many-to-one>
+ <list name="eTypeParameters" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclassifier_etypeparameters">
+ <column name="`eclassifier_etypeparameters_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclassifier_etypeparameters_idx`"/>
+ <one-to-many entity-name="ETypeParameter"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EClassImpl" entity-name="EClass" abstract="false" lazy="false" extends="EClassifier" table="`eclass`">
+ <meta attribute="eclassName">EClass</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`eclassifier_e_id`"/>
+ </key>
+ <property name="abstract" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`abstract`"/>
+ </property>
+ <property name="interface" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`interface`"/>
+ </property>
+ <list name="eSuperTypes" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="eclass_esupertypes">
+ <column name="`eclass_esupertypes_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclass_esupertypes_idx`"/>
+ <one-to-many entity-name="EClass"/>
+ </list>
+ <list name="eOperations" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclass_eoperations">
+ <column name="`eoperation_econtainingclass_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclass_eoperations_idx`"/>
+ <one-to-many entity-name="EOperation"/>
+ </list>
+ <list name="eStructuralFeatures" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclass_estructuralfeatures">
+ <column name="`estructuralfeature_econtainingclass_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclass_estructuralfeatures_idx`"/>
+ <one-to-many entity-name="EStructuralFeature"/>
+ </list>
+ <list name="eGenericSuperTypes" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eclass_egenericsupertypes">
+ <column name="`eclass_egenericsupertypes_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eclass_egenericsupertypes_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EDataTypeImpl" entity-name="EDataType" abstract="false" lazy="false" extends="EClassifier" table="`edatatype`">
+ <meta attribute="eclassName">EDataType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`eclassifier_e_id`"/>
+ </key>
+ <property name="serializable" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`serializable`"/>
+ </property>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EEnumImpl" entity-name="EEnum" abstract="false" lazy="false" extends="EDataType" table="`eenum`">
+ <meta attribute="eclassName">EEnum</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`edatatype_e_id`"/>
+ </key>
+ <list name="eLiterals" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eenum_eliterals">
+ <column name="`eenumliteral_eenum_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eenum_eliterals_idx`"/>
+ <one-to-many entity-name="EEnumLiteral"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EEnumLiteralImpl" entity-name="EEnumLiteral" abstract="false" lazy="false" extends="ENamedElement" table="`eenumliteral`">
+ <meta attribute="eclassName">EEnumLiteral</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`enamedelement_e_id`"/>
+ </key>
+ <property name="value" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`value`"/>
+ </property>
+ <property name="literal" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`literal`"/>
+ </property>
+ <many-to-one name="eEnum" entity-name="EEnum" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eenumliteral_eenum" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eenumliteral_eenum_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EFactoryImpl" entity-name="EFactory" abstract="false" lazy="false" extends="EModelElement" table="`efactory`">
+ <meta attribute="eclassName">EFactory</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`emodelelement_e_id`"/>
+ </key>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EOperationImpl" entity-name="EOperation" abstract="false" lazy="false" extends="ETypedElement" table="`eoperation`">
+ <meta attribute="eclassName">EOperation</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`etypedelement_e_id`"/>
+ </key>
+ <many-to-one name="eContainingClass" entity-name="EClass" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eoperation_econtainingclass" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eoperation_econtainingclass_e_id`"/>
+ </many-to-one>
+ <list name="eTypeParameters" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eoperation_etypeparameters">
+ <column name="`eoperation_etypeparameters_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_etypeparameters_idx`"/>
+ <one-to-many entity-name="ETypeParameter"/>
+ </list>
+ <list name="eParameters" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eoperation_eparameters">
+ <column name="`eparameter_eoperation_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_eparameters_idx`"/>
+ <one-to-many entity-name="EParameter"/>
+ </list>
+ <list name="eExceptions" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="eoperation_eexceptions">
+ <column name="`eoperation_eexceptions_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_eexceptions_idx`"/>
+ <one-to-many entity-name="EClassifier"/>
+ </list>
+ <list name="eGenericExceptions" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="eoperation_egenericexceptions">
+ <column name="`eoperation_egenericexceptions_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`eoperation_egenericexceptions_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EPackageImpl" entity-name="EPackage" abstract="false" lazy="false" extends="ENamedElement" table="`epackage`">
+ <meta attribute="eclassName">EPackage</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`enamedelement_e_id`"/>
+ </key>
+ <property name="nsURI" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`nsuri`"/>
+ </property>
+ <property name="nsPrefix" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`nsprefix`"/>
+ </property>
+ <list name="eClassifiers" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="epackage_eclassifiers">
+ <column name="`eclassifier_epackage_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`epackage_eclassifiers_idx`"/>
+ <one-to-many entity-name="EClassifier"/>
+ </list>
+ <list name="eSubpackages" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="epackage_esubpackages">
+ <column name="`epackage_esuperpackage_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`epackage_esubpackages_idx`"/>
+ <one-to-many entity-name="EPackage"/>
+ </list>
+ <many-to-one name="eSuperPackage" entity-name="EPackage" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="epackage_esuperpackage" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`epackage_esuperpackage_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EParameterImpl" entity-name="EParameter" abstract="false" lazy="false" extends="ETypedElement" table="`eparameter`">
+ <meta attribute="eclassName">EParameter</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`etypedelement_e_id`"/>
+ </key>
+ <many-to-one name="eOperation" entity-name="EOperation" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="eparameter_eoperation" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`eparameter_eoperation_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EReferenceImpl" entity-name="EReference" abstract="false" lazy="false" extends="EStructuralFeature" table="`ereference`">
+ <meta attribute="eclassName">EReference</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`estructuralfeature_e_id`"/>
+ </key>
+ <property name="containment" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`containment`"/>
+ </property>
+ <property name="resolveProxies" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`resolveproxies`"/>
+ </property>
+ <many-to-one name="eOpposite" entity-name="EReference" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ereference_eopposite" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`ereference_eopposite_e_id`"/>
+ </many-to-one>
+ <list name="eKeys" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="ereference_ekeys">
+ <column name="`ereference_ekeys_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`ereference_ekeys_idx`"/>
+ <one-to-many entity-name="EAttribute"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.EGenericTypeImpl" entity-name="EGenericType" abstract="false" lazy="false" extends="ecore_EObject" table="`egenerictype`">
+ <meta attribute="eclassName">EGenericType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`ecore_eobject_e_id`"/>
+ </key>
+ <many-to-one name="eUpperBound" entity-name="EGenericType" lazy="false" cascade="all" foreign-key="egenerictype_eupperbound" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`egenerictype_eupperbound_e_id`"/>
+ </many-to-one>
+ <list name="eTypeArguments" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="egenerictype_etypearguments">
+ <column name="`egenerictype_etypearguments_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`egenerictype_etypearguments_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ <many-to-one name="eLowerBound" entity-name="EGenericType" lazy="false" cascade="all" foreign-key="egenerictype_elowerbound" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`egenerictype_elowerbound_e_id`"/>
+ </many-to-one>
+ <many-to-one name="eTypeParameter" entity-name="ETypeParameter" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="egenerictype_etypeparameter" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`etypeparameter_etypeparameter_e_id`"/>
+ </many-to-one>
+ <many-to-one name="eClassifier" entity-name="EClassifier" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="egenerictype_eclassifier" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`eclassifier_eclassifier_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass name="org.eclipse.emf.ecore.impl.ETypeParameterImpl" entity-name="ETypeParameter" abstract="false" lazy="false" extends="ENamedElement" table="`etypeparameter`">
+ <meta attribute="eclassName">ETypeParameter</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2002/Ecore</meta>
+ <key>
+ <column name="`enamedelement_e_id`"/>
+ </key>
+ <list name="eBounds" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="etypeparameter_ebounds">
+ <column name="`etypeparameter_ebounds_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`etypeparameter_ebounds_idx`"/>
+ <one-to-many entity-name="EGenericType"/>
+ </list>
+ </joined-subclass>
+ <class name="org.eclipse.emf.ecore.xml.type.impl.AnyTypeImpl" entity-name="AnyType" abstract="false" lazy="false" table="`anytype`">
+ <meta attribute="eclassName">AnyType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2003/XMLType</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <list name="mixed" table="`anytype_mixed`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`anytype_mixed_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`anytype_mixed_idx`"/>
+ <one-to-many entity-name="AnyType_mixed"/>
+ </list>
+ <list name="anyAttribute" table="`anytype_anyattribute`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`anytype_anyattribute_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`anytype_anyattribute_idx`"/>
+ <one-to-many entity-name="AnyType_anyAttribute"/>
+ </list>
+ </class>
+ <class entity-name="AnyType_mixed" lazy="false" table="`anytype_mixed`">
+ <meta attribute="featureMap">AnyType</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <list name="any" table="`mixed_anytype_any`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`mixed_anytype_any_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`mixed_anytype_any_idx`"/>
+ <one-to-many entity-name="AnyType_any"/>
+ </list>
+ <list name="anyAttribute" table="`mixed_anytype_anyattribute`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`mixed_anytype_anyattribute_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`mixed_anytype_anyattribute_idx`"/>
+ <one-to-many entity-name="AnyType_anyAttribute"/>
+ </list>
+ <property name="fme_mixed_text" type="java.lang.String"/>
+ <property name="fme_mixed_cdata" type="java.lang.String"/>
+ <property name="fme_mixed_comment" type="java.lang.String"/>
+ </class>
+ <class entity-name="AnyType_anyAttribute" lazy="false" table="`anytype_anyattribute`">
+ <meta attribute="featureMap">AnyType</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ </class>
+ <class entity-name="AnyType_any" lazy="false" table="`anytype_any`">
+ <meta attribute="featureMap">AnyType</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <property name="any_fme_any_data" type="java.lang.String"/>
+ <any id-type="long" meta-type="string" name="any_fme_any_reference" cascade="all">
+ <column not-null="false" unique="false" name="`any_type`"/>
+ <column not-null="false" unique="false" name="`any_id`"/>
+ </any>
+ </class>
+ <class name="org.eclipse.emf.ecore.xml.type.impl.ProcessingInstructionImpl" entity-name="ProcessingInstruction" abstract="false" lazy="false" table="`processinginstruction`">
+ <meta attribute="eclassName">ProcessingInstruction</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2003/XMLType</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="data" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`data`"/>
+ </property>
+ <property name="target" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`target`"/>
+ </property>
+ </class>
+ <joined-subclass name="org.eclipse.emf.ecore.xml.type.impl.SimpleAnyTypeImpl" entity-name="SimpleAnyType" abstract="false" lazy="false" extends="AnyType" table="`simpleanytype`">
+ <meta attribute="eclassName">SimpleAnyType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/2003/XMLType</meta>
+ <key>
+ <column name="`anytype_e_id`"/>
+ </key>
+ <many-to-one name="instanceType" entity-name="EDataType" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="simpleanytype_instancetype" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`edatatype_instancetype_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..afde9f553
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.employee.impl.DepartmentImpl" entity-name="Department" abstract="false" lazy="false" discriminator-value="Department" table="`department`">
+ <meta attribute="eclassName">Department</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Employee</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator column="`dtype`" type="string"/>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="employees" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="department_employees">
+ <column name="`department_employees_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Employee"/>
+ <filter name="ageRange" condition="age between :fromAge and :toAge"/>
+ <filter name="salaryHigherThan" condition="salary > :salary"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.employee.impl.EmployeeImpl" entity-name="Employee" abstract="false" lazy="false" discriminator-value="Employee" table="`employee`">
+ <meta attribute="eclassName">Employee</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Employee</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator column="`dtype`" type="string"/>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <property name="salary" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`salary`"/>
+ </property>
+ <property name="age" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`age`"/>
+ </property>
+ <property name="hireDate" lazy="false" insert="true" update="true" not-null="true" unique="false" type="timestamp">
+ <column not-null="true" unique="false" name="`hiredate`"/>
+ </property>
+ <filter name="ageRange" condition="age between :fromAge and :toAge"/>
+ <filter name="salaryHigherThan" condition="salary > :salary"/>
+ <filter name="hireDate" condition="hireDate > :date"/>
+ </class>
+ <filter-def name="hireDate">
+ <filter-param name="date" type="date"/>
+ </filter-def>
+ <filter-def name="ageRange">
+ <filter-param name="fromAge" type="integer"/>
+ <filter-param name="toAge" type="integer"/>
+ </filter-def>
+ <filter-def name="salaryHigherThan">
+ <filter-param name="salary" type="integer"/>
+ </filter-def>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..784f8ed2c
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.employee.impl.DepartmentImpl" entity-name="Department" abstract="false" lazy="false" table="`department`">
+ <meta attribute="eclassName">Department</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Employee</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="employees" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="department_employees">
+ <column name="`department_employees_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Employee"/>
+ <filter name="ageRange" condition="age between :fromAge and :toAge"/>
+ <filter name="salaryHigherThan" condition="salary > :salary"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.employee.impl.EmployeeImpl" entity-name="Employee" abstract="false" lazy="false" table="`employee`">
+ <meta attribute="eclassName">Employee</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Employee</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <property name="salary" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`salary`"/>
+ </property>
+ <property name="age" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`age`"/>
+ </property>
+ <property name="hireDate" lazy="false" insert="true" update="true" not-null="true" unique="false" type="timestamp">
+ <column not-null="true" unique="false" name="`hiredate`"/>
+ </property>
+ <filter name="ageRange" condition="age between :fromAge and :toAge"/>
+ <filter name="salaryHigherThan" condition="salary > :salary"/>
+ <filter name="hireDate" condition="hireDate > :date"/>
+ </class>
+ <filter-def name="hireDate">
+ <filter-param name="date" type="date"/>
+ </filter-def>
+ <filter-def name="ageRange">
+ <filter-param name="fromAge" type="integer"/>
+ <filter-param name="toAge" type="integer"/>
+ </filter-def>
+ <filter-def name="salaryHigherThan">
+ <filter-param name="salary" type="integer"/>
+ </filter-def>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..784f8ed2c
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/EmployeeAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.employee.impl.DepartmentImpl" entity-name="Department" abstract="false" lazy="false" table="`department`">
+ <meta attribute="eclassName">Department</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Employee</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="employees" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="department_employees">
+ <column name="`department_employees_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Employee"/>
+ <filter name="ageRange" condition="age between :fromAge and :toAge"/>
+ <filter name="salaryHigherThan" condition="salary > :salary"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.employee.impl.EmployeeImpl" entity-name="Employee" abstract="false" lazy="false" table="`employee`">
+ <meta attribute="eclassName">Employee</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Employee</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <property name="salary" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`salary`"/>
+ </property>
+ <property name="age" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`age`"/>
+ </property>
+ <property name="hireDate" lazy="false" insert="true" update="true" not-null="true" unique="false" type="timestamp">
+ <column not-null="true" unique="false" name="`hiredate`"/>
+ </property>
+ <filter name="ageRange" condition="age between :fromAge and :toAge"/>
+ <filter name="salaryHigherThan" condition="salary > :salary"/>
+ <filter name="hireDate" condition="hireDate > :date"/>
+ </class>
+ <filter-def name="hireDate">
+ <filter-param name="date" type="date"/>
+ </filter-def>
+ <filter-def name="ageRange">
+ <filter-param name="fromAge" type="integer"/>
+ <filter-param name="toAge" type="integer"/>
+ </filter-def>
+ <filter-def name="salaryHigherThan">
+ <filter-param name="salary" type="integer"/>
+ </filter-def>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..804fa4e0b
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,425 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class entity-name="Vehicle" abstract="false" lazy="false" discriminator-value="Vehicle" table="`vehicle`">
+ <meta attribute="eclassName">Vehicle</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="vehicledtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="brand" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`brand`"/>
+ </property>
+ <property name="model" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`model`"/>
+ </property>
+ <property name="make" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`make`"/>
+ </property>
+ <property name="color" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`color`"/>
+ </property>
+ <property name="plate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`plate`"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="year" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`year`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`length`"/>
+ </property>
+ <list name="availableColors" table="`vehicle_availablecolors`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`vehicle_availablecolors_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`vehicle_availablecolors_idx`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <many-to-one name="owner" entity-name="Person" lazy="false" cascade="all" foreign-key="vehicle_owner" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`person_owner_e_id`"/>
+ </many-to-one>
+ <list name="manufacturedAt" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="vehicle_manufacturedat">
+ <column name="`vehicle_manufacturedat_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`vehicle_manufacturedat_idx`"/>
+ <one-to-many entity-name="ManufacturingPlant"/>
+ </list>
+ <many-to-one name="tireSpec" entity-name="Tire" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="vehicle_tirespec" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`tire_tirespec_e_id`"/>
+ </many-to-one>
+ </class>
+ <class entity-name="Temporal" abstract="false" lazy="false" discriminator-value="Temporal" table="`temporal`">
+ <meta attribute="eclassName">Temporal</meta>
+ <meta attribute="epackage">http:///temporal.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="temporaldtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`date`"/>
+ </property>
+ <array name="touchedAttributes" table="`temporal_touchedattributes`" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`temporal_touchedattributes_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`temporal_touchedattributes_idx`"/>
+ <element type="byte"/>
+ </array>
+ <property name="continuity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`continuity`"/>
+ </property>
+ <many-to-one name="versionHolder" entity-name="VersionHolder" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="temporal_versionholder" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`temporal_versionholder_e_id`"/>
+ </many-to-one>
+ <many-to-one name="versionHolderContainment" entity-name="VersionHolder" lazy="false" cascade="all" foreign-key="temporal_versionholdercontainment" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`versionholder_versionholdercontainment_e_id`"/>
+ </many-to-one>
+ </class>
+ <subclass entity-name="Person" abstract="false" lazy="false" extends="Temporal" discriminator-value="Person">
+ <meta attribute="eclassName">Person</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ <property name="employed" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`employed`"/>
+ </property>
+ <list name="addresses" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="person_addresses">
+ <column name="`person_addresses_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`person_addresses_idx`"/>
+ <one-to-many entity-name="Address"/>
+ </list>
+ <list name="ownedVehicles" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="person_ownedvehicles">
+ <column name="`person_ownedvehicles_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`person_ownedvehicles_idx`"/>
+ <one-to-many entity-name="VehicleInfo"/>
+ </list>
+ <many-to-one name="birthAddress" entity-name="Address" lazy="false" cascade="all" foreign-key="person_birthaddress" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`address_birthaddress_e_id`"/>
+ </many-to-one>
+ </subclass>
+ <subclass entity-name="Address" abstract="false" lazy="false" extends="Temporal" discriminator-value="Address">
+ <meta attribute="eclassName">Address</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <property name="streetName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`streetname`"/>
+ </property>
+ <property name="streetNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`streetnumber`"/>
+ </property>
+ <property name="city" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`city`"/>
+ </property>
+ <property name="country" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`country`"/>
+ </property>
+ </subclass>
+ <class entity-name="VehicleInfo" abstract="false" lazy="false" discriminator-value="VehicleInfo" table="`vehicleinfo`">
+ <meta attribute="eclassName">VehicleInfo</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="vehicleinfodtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="acquisitionDate" lazy="false" insert="true" update="true" not-null="true" unique="false" type="timestamp">
+ <column not-null="true" unique="false" name="`acquisitiondate`"/>
+ </property>
+ <many-to-one name="vehicle" entity-name="Vehicle" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="vehicleinfo_vehicle" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`vehicle_vehicle_e_id`"/>
+ </many-to-one>
+ </class>
+ <class entity-name="ManufacturingPlant" abstract="false" lazy="false" discriminator-value="ManufacturingPlant" table="`manufacturingplant`">
+ <meta attribute="eclassName">ManufacturingPlant</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="manufacturingplantdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ <many-to-one name="address" entity-name="Address" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="manufacturingplant_address" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`address_address_e_id`"/>
+ </many-to-one>
+ <many-to-one name="transportFleet" entity-name="Fleet" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="manufacturingplant_transportfleet" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`fleet_transportfleet_e_id`"/>
+ </many-to-one>
+ </class>
+ <subclass entity-name="Fleet" abstract="false" lazy="false" extends="Temporal" discriminator-value="Fleet">
+ <meta attribute="eclassName">Fleet</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <list name="vehicles" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="fleet_vehicles">
+ <column name="`fleet_vehicles_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`fleet_vehicles_idx`"/>
+ <one-to-many entity-name="Vehicle"/>
+ </list>
+ <list name="vehicleInformation" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="fleet_vehicleinformation">
+ <column name="`fleet_vehicleinformation_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`fleet_vehicleinformation_idx`"/>
+ <one-to-many entity-name="VehicleInfo"/>
+ </list>
+ <many-to-one name="serviceGarage" entity-name="Garage" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="fleet_servicegarage" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`fleet_servicegarage_e_id`"/>
+ </many-to-one>
+ </subclass>
+ <subclass entity-name="Garage" abstract="false" lazy="false" extends="Temporal" discriminator-value="Garage">
+ <meta attribute="eclassName">Garage</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <list name="vehicles" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="garage_vehicles">
+ <column name="`garage_vehicles_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`garage_vehicles_idx`"/>
+ <one-to-many entity-name="Vehicle"/>
+ </list>
+ <many-to-one name="customerShuttles" entity-name="Fleet" lazy="false" cascade="all" foreign-key="garage_customershuttles" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`fleet_customershuttles_e_id`"/>
+ </many-to-one>
+ <many-to-one name="address" entity-name="Address" lazy="false" cascade="all" foreign-key="garage_address" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`address_address_e_id`"/>
+ </many-to-one>
+ <list name="fleetsUsingGarage" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`fleet_servicegarage_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`garage_fleetsusinggarage_idx`"/>
+ <one-to-many entity-name="Fleet"/>
+ </list>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </subclass>
+ <class entity-name="Tire" abstract="false" lazy="false" discriminator-value="Tire" table="`tire`">
+ <meta attribute="eclassName">Tire</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="tiredtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="radius" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`radius`"/>
+ </property>
+ <property name="width" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`width`"/>
+ </property>
+ <property name="profile" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`profile`"/>
+ </property>
+ <property name="make" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`make`"/>
+ </property>
+ <property name="model" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`model`"/>
+ </property>
+ </class>
+ <subclass entity-name="Car" abstract="false" lazy="false" extends="Vehicle" discriminator-value="Car">
+ <meta attribute="eclassName">Car</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <property name="passengerName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`passengername`"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`date`"/>
+ </property>
+ <array name="touchedAttributes" table="`car_touchedattributes`" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`car_touchedattributes_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`car_touchedattributes_idx`"/>
+ <element type="byte"/>
+ </array>
+ <property name="continuity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`continuity`"/>
+ </property>
+ <many-to-one name="versionHolder" entity-name="VersionHolder" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="temporal_versionholder" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`car_versionholder_e_id`"/>
+ </many-to-one>
+ <many-to-one name="versionHolderContainment" entity-name="VersionHolder" lazy="false" cascade="all" foreign-key="temporal_versionholdercontainment" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`versionholder_versionholdercontainment_e_id`"/>
+ </many-to-one>
+ <property name="numPassengers" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`numpassengers`"/>
+ </property>
+ <property name="numTires" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`numtires`"/>
+ </property>
+ <list name="tires" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="car_tires">
+ <column name="`car_tires_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`car_tires_idx`"/>
+ <one-to-many entity-name="Tire"/>
+ </list>
+ </subclass>
+ <subclass entity-name="Hybrid" abstract="false" lazy="false" extends="Car" discriminator-value="Hybrid">
+ <meta attribute="eclassName">Hybrid</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <property name="hasRechargePlug" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`hasrechargeplug`"/>
+ </property>
+ <property name="batteryLife" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`batterylife`"/>
+ </property>
+ </subclass>
+ <class name="fleet.PassengerVehicle" entity-name="PassengerVehicle" abstract="true" lazy="false" discriminator-value="PassengerVehicle" table="`passengervehicle`">
+ <meta attribute="eclassName">PassengerVehicle</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="passengervehicledtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="passengerName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`passengername`"/>
+ </property>
+ </class>
+ <subclass entity-name="EngineFactory" abstract="false" lazy="false" extends="ManufacturingPlant" discriminator-value="EngineFactory">
+ <meta attribute="eclassName">EngineFactory</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <property name="makesDieselEngines" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`makesdieselengines`"/>
+ </property>
+ <list name="brands" table="`enginefactory_brands`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`enginefactory_brands_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`enginefactory_brands_idx`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </subclass>
+ <subclass entity-name="USAddress" abstract="false" lazy="false" extends="Address" discriminator-value="USAddress">
+ <meta attribute="eclassName">USAddress</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <property name="zipCode" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`zipcode`"/>
+ </property>
+ <property name="state" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`state`"/>
+ </property>
+ </subclass>
+ <class entity-name="Vin" abstract="false" lazy="false" discriminator-value="Vin" table="`vin`">
+ <meta attribute="eclassName">Vin</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="vindtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="installationDate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`installationdate`"/>
+ </property>
+ <many-to-one name="vehicle" entity-name="Vehicle" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="vin_vehicle" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`vehicle_vehicle_e_id`"/>
+ </many-to-one>
+ </class>
+ <class entity-name="TransportationDevice" abstract="false" lazy="false" discriminator-value="TransportationDevice" table="`transportationdevice`">
+ <meta attribute="eclassName">TransportationDevice</meta>
+ <meta attribute="epackage">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="transportationdevicedtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="manufacturedBy" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`manufacturedby`"/>
+ </property>
+ <property name="year" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`year`"/>
+ </property>
+ </class>
+ <class entity-name="VersionHolder" abstract="false" lazy="false" discriminator-value="VersionHolder" table="`versionholder`">
+ <meta attribute="eclassName">VersionHolder</meta>
+ <meta attribute="epackage">http:///temporal.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="versionholderdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <list name="versions" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`temporal_versionholder_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`versionholder_versions_idx`"/>
+ <one-to-many entity-name="Temporal"/>
+ </list>
+ <property name="indexOfContinuity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`indexofcontinuity`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..16885c2d9
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,422 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class entity-name="Vehicle" abstract="false" lazy="false" table="`vehicle`">
+ <meta attribute="eclassName" inherit="false">Vehicle</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="brand" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`brand`"/>
+ </property>
+ <property name="model" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`model`"/>
+ </property>
+ <property name="make" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`make`"/>
+ </property>
+ <property name="color" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`color`"/>
+ </property>
+ <property name="plate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`plate`"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="year" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`year`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`length`"/>
+ </property>
+ <list name="availableColors" table="`vehicle_availablecolors`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`vehicle_availablecolors_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`vehicle_availablecolors_idx`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <many-to-one name="owner" entity-name="Person" lazy="false" cascade="all" foreign-key="vehicle_owner" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`person_owner_e_id`"/>
+ </many-to-one>
+ <list name="manufacturedAt" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="vehicle_manufacturedat">
+ <column name="`vehicle_manufacturedat_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`vehicle_manufacturedat_idx`"/>
+ <one-to-many entity-name="ManufacturingPlant"/>
+ </list>
+ <many-to-one name="tireSpec" entity-name="Tire" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="vehicle_tirespec" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`tire_tirespec_e_id`"/>
+ </many-to-one>
+ </class>
+ <class entity-name="Temporal" abstract="false" lazy="false" table="`temporal`">
+ <meta attribute="eclassName" inherit="false">Temporal</meta>
+ <meta attribute="epackage" inherit="false">http:///temporal.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`date`"/>
+ </property>
+ <array name="touchedAttributes" table="`temporal_touchedattributes`" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`temporal_touchedattributes_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`temporal_touchedattributes_idx`"/>
+ <element type="byte"/>
+ </array>
+ <property name="continuity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`continuity`"/>
+ </property>
+ <many-to-one name="versionHolder" entity-name="VersionHolder" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="temporal_versionholder" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`temporal_versionholder_e_id`"/>
+ </many-to-one>
+ <many-to-one name="versionHolderContainment" entity-name="VersionHolder" lazy="false" cascade="all" foreign-key="temporal_versionholdercontainment" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`versionholder_versionholdercontainment_e_id`"/>
+ </many-to-one>
+ </class>
+ <joined-subclass entity-name="Person" abstract="false" lazy="false" extends="Temporal" table="`person`">
+ <meta attribute="eclassName" inherit="false">Person</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`temporal_e_id`"/>
+ </key>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ <property name="employed" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`employed`"/>
+ </property>
+ <list name="addresses" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="person_addresses">
+ <column name="`person_addresses_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`person_addresses_idx`"/>
+ <one-to-many entity-name="Address"/>
+ </list>
+ <list name="ownedVehicles" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="person_ownedvehicles">
+ <column name="`person_ownedvehicles_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`person_ownedvehicles_idx`"/>
+ <one-to-many entity-name="VehicleInfo"/>
+ </list>
+ <many-to-one name="birthAddress" entity-name="Address" lazy="false" cascade="all" foreign-key="person_birthaddress" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`address_birthaddress_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass entity-name="Address" abstract="false" lazy="false" extends="Temporal" table="`address`">
+ <meta attribute="eclassName" inherit="false">Address</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`temporal_e_id`"/>
+ </key>
+ <property name="streetName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`streetname`"/>
+ </property>
+ <property name="streetNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`streetnumber`"/>
+ </property>
+ <property name="city" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`city`"/>
+ </property>
+ <property name="country" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`country`"/>
+ </property>
+ </joined-subclass>
+ <class entity-name="VehicleInfo" abstract="false" lazy="false" table="`vehicleinfo`">
+ <meta attribute="eclassName" inherit="false">VehicleInfo</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="acquisitionDate" lazy="false" insert="true" update="true" not-null="true" unique="false" type="timestamp">
+ <column not-null="true" unique="false" name="`acquisitiondate`"/>
+ </property>
+ <many-to-one name="vehicle" entity-name="Vehicle" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="vehicleinfo_vehicle" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`vehicle_vehicle_e_id`"/>
+ </many-to-one>
+ </class>
+ <class entity-name="ManufacturingPlant" abstract="false" lazy="false" table="`manufacturingplant`">
+ <meta attribute="eclassName" inherit="false">ManufacturingPlant</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ <many-to-one name="address" entity-name="Address" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="manufacturingplant_address" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`address_address_e_id`"/>
+ </many-to-one>
+ <many-to-one name="transportFleet" entity-name="Fleet" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="manufacturingplant_transportfleet" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`fleet_transportfleet_e_id`"/>
+ </many-to-one>
+ </class>
+ <joined-subclass entity-name="Fleet" abstract="false" lazy="false" extends="Temporal" table="`fleet`">
+ <meta attribute="eclassName" inherit="false">Fleet</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`temporal_e_id`"/>
+ </key>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <list name="vehicles" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="fleet_vehicles">
+ <column name="`fleet_vehicles_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`fleet_vehicles_idx`"/>
+ <one-to-many entity-name="Vehicle"/>
+ </list>
+ <list name="vehicleInformation" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="fleet_vehicleinformation">
+ <column name="`fleet_vehicleinformation_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`fleet_vehicleinformation_idx`"/>
+ <one-to-many entity-name="VehicleInfo"/>
+ </list>
+ <many-to-one name="serviceGarage" entity-name="Garage" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="fleet_servicegarage" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`fleet_servicegarage_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass entity-name="Garage" abstract="false" lazy="false" extends="Temporal" table="`garage`">
+ <meta attribute="eclassName" inherit="false">Garage</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`temporal_e_id`"/>
+ </key>
+ <list name="vehicles" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="garage_vehicles">
+ <column name="`garage_vehicles_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`garage_vehicles_idx`"/>
+ <one-to-many entity-name="Vehicle"/>
+ </list>
+ <many-to-one name="customerShuttles" entity-name="Fleet" lazy="false" cascade="all" foreign-key="garage_customershuttles" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`fleet_customershuttles_e_id`"/>
+ </many-to-one>
+ <many-to-one name="address" entity-name="Address" lazy="false" cascade="all" foreign-key="garage_address" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`address_address_e_id`"/>
+ </many-to-one>
+ <list name="fleetsUsingGarage" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`fleet_servicegarage_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`garage_fleetsusinggarage_idx`"/>
+ <one-to-many entity-name="Fleet"/>
+ </list>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </joined-subclass>
+ <class entity-name="Tire" abstract="false" lazy="false" table="`tire`">
+ <meta attribute="eclassName" inherit="false">Tire</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="radius" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`radius`"/>
+ </property>
+ <property name="width" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`width`"/>
+ </property>
+ <property name="profile" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`profile`"/>
+ </property>
+ <property name="make" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`make`"/>
+ </property>
+ <property name="model" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`model`"/>
+ </property>
+ </class>
+ <joined-subclass entity-name="Car" abstract="false" lazy="false" extends="Vehicle" table="`car`">
+ <meta attribute="eclassName" inherit="false">Car</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`passengervehicle_e_id`"/>
+ </key>
+ <property name="passengerName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`passengername`"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`date`"/>
+ </property>
+ <array name="touchedAttributes" table="`car_touchedattributes`" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`car_touchedattributes_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`car_touchedattributes_idx`"/>
+ <element type="byte"/>
+ </array>
+ <property name="continuity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`continuity`"/>
+ </property>
+ <many-to-one name="versionHolder" entity-name="VersionHolder" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="temporal_versionholder" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`car_versionholder_e_id`"/>
+ </many-to-one>
+ <many-to-one name="versionHolderContainment" entity-name="VersionHolder" lazy="false" cascade="all" foreign-key="temporal_versionholdercontainment" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`versionholder_versionholdercontainment_e_id`"/>
+ </many-to-one>
+ <property name="numPassengers" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`numpassengers`"/>
+ </property>
+ <property name="numTires" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`numtires`"/>
+ </property>
+ <list name="tires" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="car_tires">
+ <column name="`car_tires_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`car_tires_idx`"/>
+ <one-to-many entity-name="Tire"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass entity-name="Hybrid" abstract="false" lazy="false" extends="Car" table="`hybrid`">
+ <meta attribute="eclassName" inherit="false">Hybrid</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`car_e_id`"/>
+ </key>
+ <property name="hasRechargePlug" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`hasrechargeplug`"/>
+ </property>
+ <property name="batteryLife" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`batterylife`"/>
+ </property>
+ </joined-subclass>
+ <class name="fleet.PassengerVehicle" entity-name="PassengerVehicle" abstract="true" lazy="false" table="`passengervehicle`">
+ <meta attribute="eclassName" inherit="false">PassengerVehicle</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="passengerName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`passengername`"/>
+ </property>
+ </class>
+ <joined-subclass entity-name="EngineFactory" abstract="false" lazy="false" extends="ManufacturingPlant" table="`enginefactory`">
+ <meta attribute="eclassName" inherit="false">EngineFactory</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`manufacturingplant_e_id`"/>
+ </key>
+ <property name="makesDieselEngines" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`makesdieselengines`"/>
+ </property>
+ <list name="brands" table="`enginefactory_brands`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`enginefactory_brands_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`enginefactory_brands_idx`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass entity-name="USAddress" abstract="false" lazy="false" extends="Address" table="`usaddress`">
+ <meta attribute="eclassName" inherit="false">USAddress</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`address_e_id`"/>
+ </key>
+ <property name="zipCode" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`zipcode`"/>
+ </property>
+ <property name="state" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`state`"/>
+ </property>
+ </joined-subclass>
+ <class entity-name="Vin" abstract="false" lazy="false" table="`vin`">
+ <meta attribute="eclassName" inherit="false">Vin</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="installationDate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`installationdate`"/>
+ </property>
+ <many-to-one name="vehicle" entity-name="Vehicle" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="vin_vehicle" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`vehicle_vehicle_e_id`"/>
+ </many-to-one>
+ </class>
+ <class entity-name="TransportationDevice" abstract="false" lazy="false" table="`transportationdevice`">
+ <meta attribute="eclassName" inherit="false">TransportationDevice</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="manufacturedBy" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`manufacturedby`"/>
+ </property>
+ <property name="year" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`year`"/>
+ </property>
+ </class>
+ <class entity-name="VersionHolder" abstract="false" lazy="false" table="`versionholder`">
+ <meta attribute="eclassName" inherit="false">VersionHolder</meta>
+ <meta attribute="epackage" inherit="false">http:///temporal.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="versions" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`temporal_versionholder_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`versionholder_versions_idx`"/>
+ <one-to-many entity-name="Temporal"/>
+ </list>
+ <property name="indexOfContinuity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`indexofcontinuity`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..16885c2d9
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/FleetAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,422 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class entity-name="Vehicle" abstract="false" lazy="false" table="`vehicle`">
+ <meta attribute="eclassName" inherit="false">Vehicle</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="brand" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`brand`"/>
+ </property>
+ <property name="model" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`model`"/>
+ </property>
+ <property name="make" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`make`"/>
+ </property>
+ <property name="color" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`color`"/>
+ </property>
+ <property name="plate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`plate`"/>
+ </property>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="year" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`year`"/>
+ </property>
+ <property name="length" lazy="false" insert="true" update="true" not-null="false" unique="false" type="long">
+ <column not-null="false" unique="false" name="`length`"/>
+ </property>
+ <list name="availableColors" table="`vehicle_availablecolors`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`vehicle_availablecolors_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`vehicle_availablecolors_idx`"/>
+ <element type="java.lang.String"/>
+ </list>
+ <many-to-one name="owner" entity-name="Person" lazy="false" cascade="all" foreign-key="vehicle_owner" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`person_owner_e_id`"/>
+ </many-to-one>
+ <list name="manufacturedAt" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="vehicle_manufacturedat">
+ <column name="`vehicle_manufacturedat_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`vehicle_manufacturedat_idx`"/>
+ <one-to-many entity-name="ManufacturingPlant"/>
+ </list>
+ <many-to-one name="tireSpec" entity-name="Tire" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="vehicle_tirespec" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`tire_tirespec_e_id`"/>
+ </many-to-one>
+ </class>
+ <class entity-name="Temporal" abstract="false" lazy="false" table="`temporal`">
+ <meta attribute="eclassName" inherit="false">Temporal</meta>
+ <meta attribute="epackage" inherit="false">http:///temporal.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`date`"/>
+ </property>
+ <array name="touchedAttributes" table="`temporal_touchedattributes`" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`temporal_touchedattributes_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`temporal_touchedattributes_idx`"/>
+ <element type="byte"/>
+ </array>
+ <property name="continuity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`continuity`"/>
+ </property>
+ <many-to-one name="versionHolder" entity-name="VersionHolder" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="temporal_versionholder" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`temporal_versionholder_e_id`"/>
+ </many-to-one>
+ <many-to-one name="versionHolderContainment" entity-name="VersionHolder" lazy="false" cascade="all" foreign-key="temporal_versionholdercontainment" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`versionholder_versionholdercontainment_e_id`"/>
+ </many-to-one>
+ </class>
+ <joined-subclass entity-name="Person" abstract="false" lazy="false" extends="Temporal" table="`person`">
+ <meta attribute="eclassName" inherit="false">Person</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`temporal_e_id`"/>
+ </key>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ <property name="employed" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`employed`"/>
+ </property>
+ <list name="addresses" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="person_addresses">
+ <column name="`person_addresses_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`person_addresses_idx`"/>
+ <one-to-many entity-name="Address"/>
+ </list>
+ <list name="ownedVehicles" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="person_ownedvehicles">
+ <column name="`person_ownedvehicles_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`person_ownedvehicles_idx`"/>
+ <one-to-many entity-name="VehicleInfo"/>
+ </list>
+ <many-to-one name="birthAddress" entity-name="Address" lazy="false" cascade="all" foreign-key="person_birthaddress" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`address_birthaddress_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass entity-name="Address" abstract="false" lazy="false" extends="Temporal" table="`address`">
+ <meta attribute="eclassName" inherit="false">Address</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`temporal_e_id`"/>
+ </key>
+ <property name="streetName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`streetname`"/>
+ </property>
+ <property name="streetNumber" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`streetnumber`"/>
+ </property>
+ <property name="city" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`city`"/>
+ </property>
+ <property name="country" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`country`"/>
+ </property>
+ </joined-subclass>
+ <class entity-name="VehicleInfo" abstract="false" lazy="false" table="`vehicleinfo`">
+ <meta attribute="eclassName" inherit="false">VehicleInfo</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="acquisitionDate" lazy="false" insert="true" update="true" not-null="true" unique="false" type="timestamp">
+ <column not-null="true" unique="false" name="`acquisitiondate`"/>
+ </property>
+ <many-to-one name="vehicle" entity-name="Vehicle" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="vehicleinfo_vehicle" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`vehicle_vehicle_e_id`"/>
+ </many-to-one>
+ </class>
+ <class entity-name="ManufacturingPlant" abstract="false" lazy="false" table="`manufacturingplant`">
+ <meta attribute="eclassName" inherit="false">ManufacturingPlant</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ <many-to-one name="address" entity-name="Address" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="manufacturingplant_address" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`address_address_e_id`"/>
+ </many-to-one>
+ <many-to-one name="transportFleet" entity-name="Fleet" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="manufacturingplant_transportfleet" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`fleet_transportfleet_e_id`"/>
+ </many-to-one>
+ </class>
+ <joined-subclass entity-name="Fleet" abstract="false" lazy="false" extends="Temporal" table="`fleet`">
+ <meta attribute="eclassName" inherit="false">Fleet</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`temporal_e_id`"/>
+ </key>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <list name="vehicles" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="fleet_vehicles">
+ <column name="`fleet_vehicles_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`fleet_vehicles_idx`"/>
+ <one-to-many entity-name="Vehicle"/>
+ </list>
+ <list name="vehicleInformation" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="fleet_vehicleinformation">
+ <column name="`fleet_vehicleinformation_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`fleet_vehicleinformation_idx`"/>
+ <one-to-many entity-name="VehicleInfo"/>
+ </list>
+ <many-to-one name="serviceGarage" entity-name="Garage" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="fleet_servicegarage" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`fleet_servicegarage_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+ <joined-subclass entity-name="Garage" abstract="false" lazy="false" extends="Temporal" table="`garage`">
+ <meta attribute="eclassName" inherit="false">Garage</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`temporal_e_id`"/>
+ </key>
+ <list name="vehicles" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="garage_vehicles">
+ <column name="`garage_vehicles_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`garage_vehicles_idx`"/>
+ <one-to-many entity-name="Vehicle"/>
+ </list>
+ <many-to-one name="customerShuttles" entity-name="Fleet" lazy="false" cascade="all" foreign-key="garage_customershuttles" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`fleet_customershuttles_e_id`"/>
+ </many-to-one>
+ <many-to-one name="address" entity-name="Address" lazy="false" cascade="all" foreign-key="garage_address" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`address_address_e_id`"/>
+ </many-to-one>
+ <list name="fleetsUsingGarage" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`fleet_servicegarage_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`garage_fleetsusinggarage_idx`"/>
+ <one-to-many entity-name="Fleet"/>
+ </list>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </joined-subclass>
+ <class entity-name="Tire" abstract="false" lazy="false" table="`tire`">
+ <meta attribute="eclassName" inherit="false">Tire</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="radius" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`radius`"/>
+ </property>
+ <property name="width" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`width`"/>
+ </property>
+ <property name="profile" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`profile`"/>
+ </property>
+ <property name="make" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`make`"/>
+ </property>
+ <property name="model" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`model`"/>
+ </property>
+ </class>
+ <joined-subclass entity-name="Car" abstract="false" lazy="false" extends="Vehicle" table="`car`">
+ <meta attribute="eclassName" inherit="false">Car</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`passengervehicle_e_id`"/>
+ </key>
+ <property name="passengerName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`passengername`"/>
+ </property>
+ <property name="date" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`date`"/>
+ </property>
+ <array name="touchedAttributes" table="`car_touchedattributes`" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`car_touchedattributes_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`car_touchedattributes_idx`"/>
+ <element type="byte"/>
+ </array>
+ <property name="continuity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`continuity`"/>
+ </property>
+ <many-to-one name="versionHolder" entity-name="VersionHolder" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="temporal_versionholder" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`car_versionholder_e_id`"/>
+ </many-to-one>
+ <many-to-one name="versionHolderContainment" entity-name="VersionHolder" lazy="false" cascade="all" foreign-key="temporal_versionholdercontainment" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`versionholder_versionholdercontainment_e_id`"/>
+ </many-to-one>
+ <property name="numPassengers" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`numpassengers`"/>
+ </property>
+ <property name="numTires" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`numtires`"/>
+ </property>
+ <list name="tires" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="car_tires">
+ <column name="`car_tires_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`car_tires_idx`"/>
+ <one-to-many entity-name="Tire"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass entity-name="Hybrid" abstract="false" lazy="false" extends="Car" table="`hybrid`">
+ <meta attribute="eclassName" inherit="false">Hybrid</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`car_e_id`"/>
+ </key>
+ <property name="hasRechargePlug" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`hasrechargeplug`"/>
+ </property>
+ <property name="batteryLife" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`batterylife`"/>
+ </property>
+ </joined-subclass>
+ <class name="fleet.PassengerVehicle" entity-name="PassengerVehicle" abstract="true" lazy="false" table="`passengervehicle`">
+ <meta attribute="eclassName" inherit="false">PassengerVehicle</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="passengerName" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`passengername`"/>
+ </property>
+ </class>
+ <joined-subclass entity-name="EngineFactory" abstract="false" lazy="false" extends="ManufacturingPlant" table="`enginefactory`">
+ <meta attribute="eclassName" inherit="false">EngineFactory</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`manufacturingplant_e_id`"/>
+ </key>
+ <property name="makesDieselEngines" lazy="false" insert="true" update="true" not-null="false" unique="false" type="boolean">
+ <column not-null="false" unique="false" name="`makesdieselengines`"/>
+ </property>
+ <list name="brands" table="`enginefactory_brands`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`enginefactory_brands_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`enginefactory_brands_idx`"/>
+ <element type="java.lang.String"/>
+ </list>
+ </joined-subclass>
+ <joined-subclass entity-name="USAddress" abstract="false" lazy="false" extends="Address" table="`usaddress`">
+ <meta attribute="eclassName" inherit="false">USAddress</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <key>
+ <column name="`address_e_id`"/>
+ </key>
+ <property name="zipCode" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`zipcode`"/>
+ </property>
+ <property name="state" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`state`"/>
+ </property>
+ </joined-subclass>
+ <class entity-name="Vin" abstract="false" lazy="false" table="`vin`">
+ <meta attribute="eclassName" inherit="false">Vin</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="id" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`id`"/>
+ </property>
+ <property name="installationDate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`installationdate`"/>
+ </property>
+ <many-to-one name="vehicle" entity-name="Vehicle" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="vin_vehicle" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`vehicle_vehicle_e_id`"/>
+ </many-to-one>
+ </class>
+ <class entity-name="TransportationDevice" abstract="false" lazy="false" table="`transportationdevice`">
+ <meta attribute="eclassName" inherit="false">TransportationDevice</meta>
+ <meta attribute="epackage" inherit="false">http:///fleet.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="manufacturedBy" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`manufacturedby`"/>
+ </property>
+ <property name="year" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`year`"/>
+ </property>
+ </class>
+ <class entity-name="VersionHolder" abstract="false" lazy="false" table="`versionholder`">
+ <meta attribute="eclassName" inherit="false">VersionHolder</meta>
+ <meta attribute="epackage" inherit="false">http:///temporal.ecore</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="versions" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`temporal_versionholder_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`versionholder_versions_idx`"/>
+ <one-to-many entity-name="Temporal"/>
+ </list>
+ <property name="indexOfContinuity" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`indexofcontinuity`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..ad0610123
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="forum.TopicCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</param>
+ <param name="edatatype">TopicCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.ForumImpl" entity-name="Forum" abstract="false" lazy="false" discriminator-value="Forum" table="`forum`">
+ <meta attribute="eclassName">Forum</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="forumdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <list name="members" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="forum_members">
+ <column name="`forum_members_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`forum_members_idx`"/>
+ <one-to-many entity-name="Member"/>
+ </list>
+ <list name="topics" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="forum_topics">
+ <column name="`forum_topics_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`forum_topics_idx`"/>
+ <one-to-many entity-name="Topic"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.MemberImpl" entity-name="Member" abstract="false" lazy="false" discriminator-value="Member" table="`member`">
+ <meta attribute="eclassName">Member</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="memberdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="nickname" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`nickname`"/>
+ </property>
+ <list name="posts" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`post_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`member_posts_idx`"/>
+ <one-to-many entity-name="Post"/>
+ </list>
+ <list name="created" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`topic_creator_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`member_created_idx`"/>
+ <one-to-many entity-name="Topic"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.PostImpl" entity-name="Post" abstract="false" lazy="false" discriminator-value="Post" table="`post`">
+ <meta attribute="eclassName">Post</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="postdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="comment" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`comment`"/>
+ </property>
+ <many-to-one name="author" entity-name="Member" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="post_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`post_author_e_id`"/>
+ </many-to-one>
+ <many-to-one name="topic" entity-name="Topic" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="post_topic" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`post_topic_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.TopicImpl" entity-name="Topic" abstract="false" lazy="false" discriminator-value="Topic" table="`topic`">
+ <meta attribute="eclassName">Topic</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="topicdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.forum.TopicCategory</param>
+ <param name="eclassifier">TopicCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</param>
+ </type>
+ </property>
+ <many-to-one name="creator" entity-name="Member" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="topic_creator" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`topic_creator_e_id`"/>
+ </many-to-one>
+ <list name="posts" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`post_topic_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`topic_posts_idx`"/>
+ <one-to-many entity-name="Post"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..271c9eba8
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="forum.TopicCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</param>
+ <param name="edatatype">TopicCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.ForumImpl" entity-name="Forum" abstract="false" lazy="false" table="`forum`">
+ <meta attribute="eclassName" inherit="false">Forum</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <list name="members" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="forum_members">
+ <column name="`forum_members_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`forum_members_idx`"/>
+ <one-to-many entity-name="Member"/>
+ </list>
+ <list name="topics" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="forum_topics">
+ <column name="`forum_topics_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`forum_topics_idx`"/>
+ <one-to-many entity-name="Topic"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.MemberImpl" entity-name="Member" abstract="false" lazy="false" table="`member`">
+ <meta attribute="eclassName" inherit="false">Member</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="nickname" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`nickname`"/>
+ </property>
+ <list name="posts" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`post_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`member_posts_idx`"/>
+ <one-to-many entity-name="Post"/>
+ </list>
+ <list name="created" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`topic_creator_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`member_created_idx`"/>
+ <one-to-many entity-name="Topic"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.PostImpl" entity-name="Post" abstract="false" lazy="false" table="`post`">
+ <meta attribute="eclassName" inherit="false">Post</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="comment" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`comment`"/>
+ </property>
+ <many-to-one name="author" entity-name="Member" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="post_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`post_author_e_id`"/>
+ </many-to-one>
+ <many-to-one name="topic" entity-name="Topic" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="post_topic" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`post_topic_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.TopicImpl" entity-name="Topic" abstract="false" lazy="false" table="`topic`">
+ <meta attribute="eclassName" inherit="false">Topic</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.forum.TopicCategory</param>
+ <param name="eclassifier">TopicCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</param>
+ </type>
+ </property>
+ <many-to-one name="creator" entity-name="Member" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="topic_creator" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`topic_creator_e_id`"/>
+ </many-to-one>
+ <list name="posts" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`post_topic_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`topic_posts_idx`"/>
+ <one-to-many entity-name="Post"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..271c9eba8
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/ForumAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="forum.TopicCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</param>
+ <param name="edatatype">TopicCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.ForumImpl" entity-name="Forum" abstract="false" lazy="false" table="`forum`">
+ <meta attribute="eclassName" inherit="false">Forum</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <list name="members" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="forum_members">
+ <column name="`forum_members_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`forum_members_idx`"/>
+ <one-to-many entity-name="Member"/>
+ </list>
+ <list name="topics" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="forum_topics">
+ <column name="`forum_topics_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`forum_topics_idx`"/>
+ <one-to-many entity-name="Topic"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.MemberImpl" entity-name="Member" abstract="false" lazy="false" table="`member`">
+ <meta attribute="eclassName" inherit="false">Member</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="nickname" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`nickname`"/>
+ </property>
+ <list name="posts" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`post_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`member_posts_idx`"/>
+ <one-to-many entity-name="Post"/>
+ </list>
+ <list name="created" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`topic_creator_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`member_created_idx`"/>
+ <one-to-many entity-name="Topic"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.PostImpl" entity-name="Post" abstract="false" lazy="false" table="`post`">
+ <meta attribute="eclassName" inherit="false">Post</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="comment" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`comment`"/>
+ </property>
+ <many-to-one name="author" entity-name="Member" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="post_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`post_author_e_id`"/>
+ </many-to-one>
+ <many-to-one name="topic" entity-name="Topic" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="post_topic" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`post_topic_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.forum.impl.TopicImpl" entity-name="Topic" abstract="false" lazy="false" table="`topic`">
+ <meta attribute="eclassName" inherit="false">Topic</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.forum.TopicCategory</param>
+ <param name="eclassifier">TopicCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/forum</param>
+ </type>
+ </property>
+ <many-to-one name="creator" entity-name="Member" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="topic_creator" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`topic_creator_e_id`"/>
+ </many-to-one>
+ <list name="posts" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`post_topic_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`topic_posts_idx`"/>
+ <one-to-many entity-name="Post"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..01a2281d1
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PTypeImpl" entity-name="PType" abstract="false" lazy="false" discriminator-value="PType" table="`ptype`">
+ <meta attribute="eclassName">PType</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/inv</meta>
+ <id name="id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`id`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="ptypedtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ <many-to-one name="base" entity-name="PType" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ptype_base" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`ptype_base_id`"/>
+ </many-to-one>
+ <bag name="subTypes" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`ptype_base_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="PType"/>
+ </bag>
+ <bag name="subNOTypes" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="ptype_subnotypes">
+ <column name="`ptype_subnotypes_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="PType"/>
+ </bag>
+ <bag name="infoReferences" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="ptype_inforeferences">
+ <column name="`ptype_inforeferences_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="PDeclaration"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PDeclarationImpl" entity-name="PDeclaration" abstract="false" lazy="false" discriminator-value="PDeclaration" table="`pdeclaration`">
+ <meta attribute="eclassName">PDeclaration</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/inv</meta>
+ <id name="id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`id`"/>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="pdeclarationdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..c83a1dea1
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PTypeImpl" entity-name="PType" abstract="false" lazy="false" table="`ptype`">
+ <meta attribute="eclassName" inherit="false">PType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/inv</meta>
+ <id name="id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`id`"/>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ <many-to-one name="base" entity-name="PType" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ptype_base" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`ptype_base_id`"/>
+ </many-to-one>
+ <bag name="subTypes" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`ptype_base_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="PType"/>
+ </bag>
+ <bag name="subNOTypes" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="ptype_subnotypes">
+ <column name="`ptype_subnotypes_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="PType"/>
+ </bag>
+ <bag name="infoReferences" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="ptype_inforeferences">
+ <column name="`ptype_inforeferences_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="PDeclaration"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PDeclarationImpl" entity-name="PDeclaration" abstract="false" lazy="false" table="`pdeclaration`">
+ <meta attribute="eclassName" inherit="false">PDeclaration</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/inv</meta>
+ <id name="id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`id`"/>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..c83a1dea1
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/InventoryAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PTypeImpl" entity-name="PType" abstract="false" lazy="false" table="`ptype`">
+ <meta attribute="eclassName" inherit="false">PType</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/inv</meta>
+ <id name="id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`id`"/>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ <many-to-one name="base" entity-name="PType" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="ptype_base" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`ptype_base_id`"/>
+ </many-to-one>
+ <bag name="subTypes" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`ptype_base_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="PType"/>
+ </bag>
+ <bag name="subNOTypes" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="ptype_subnotypes">
+ <column name="`ptype_subnotypes_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="PType"/>
+ </bag>
+ <bag name="infoReferences" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="ptype_inforeferences">
+ <column name="`ptype_inforeferences_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="PDeclaration"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.inv.impl.PDeclarationImpl" entity-name="PDeclaration" abstract="false" lazy="false" table="`pdeclaration`">
+ <meta attribute="eclassName" inherit="false">PDeclaration</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/inv</meta>
+ <id name="id" type="long" unsaved-value="0">
+ <column not-null="true" unique="false" name="`id`"/>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`name`"/>
+ </property>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..f691b0332
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,148 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.BookDefinitionImpl" entity-name="BookDefinition" abstract="true" lazy="false" discriminator-value="BookDefinition" table="`bookdefinition`">
+ <meta attribute="eclassName">BookDefinition</meta>
+ <meta attribute="epackage">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id name="uniqueName" type="java.lang.String">
+ <column not-null="true" unique="false" name="`uniquename`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdefinitiondtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="description" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`description`"/>
+ </property>
+ <property name="location" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`location`"/>
+ </property>
+ </class>
+ <subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.AdultBooksImpl" entity-name="AdultBooks" abstract="false" lazy="false" extends="BookDefinition" discriminator-value="AdultBooks">
+ <meta attribute="eclassName">AdultBooks</meta>
+ <meta attribute="epackage">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`title`"/>
+ </property>
+ <property name="checkedout" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`checkedout`"/>
+ </property>
+ <property name="userid" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`userid`"/>
+ </property>
+ </subclass>
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.ResourceLinkImpl" entity-name="ResourceLink" abstract="true" lazy="false" discriminator-value="ResourceLink" table="`resourcelink`">
+ <meta attribute="eclassName">ResourceLink</meta>
+ <meta attribute="epackage">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="resourcelinkdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.BookDefinitionResourceLinkImpl" entity-name="BookDefinitionResourceLink" abstract="false" lazy="false" extends="ResourceLink" discriminator-value="BookDefinitionResourceLink">
+ <meta attribute="eclassName">BookDefinitionResourceLink</meta>
+ <meta attribute="epackage">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <property name="bookSubject" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`booksubject`"/>
+ </property>
+ </subclass>
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.BooksInLibImpl" entity-name="BooksInLib" abstract="false" lazy="false" discriminator-value="BooksInLib" table="`booksinlib`">
+ <meta attribute="eclassName">BooksInLib</meta>
+ <meta attribute="epackage">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="booksinlibdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <list name="library" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="booksinlib_library">
+ <column name="`booksinlib_library_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`booksinlib_library_idx`"/>
+ <one-to-many entity-name="Library"/>
+ </list>
+ </class>
+ <subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.ChildrenBooksImpl" entity-name="ChildrenBooks" abstract="false" lazy="false" extends="BookDefinition" discriminator-value="ChildrenBooks">
+ <meta attribute="eclassName">ChildrenBooks</meta>
+ <meta attribute="epackage">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`title`"/>
+ </property>
+ <property name="cartoon" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`cartoon`"/>
+ </property>
+ <property name="popup" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`popup`"/>
+ </property>
+ <many-to-one name="publisherDefinitionRef" entity-name="PublisherDefinition" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="childrenbooks_publisherdefinitionref" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`publisherdefinition_publisherdefinitionref_uniquename`"/>
+ </many-to-one>
+ </subclass>
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id name="uniqueName" type="java.lang.String">
+ <column not-null="true" unique="false" name="`uniquename`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <list name="library" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_library">
+ <column name="`library_library_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_library_idx`"/>
+ <one-to-many entity-name="Library"/>
+ </list>
+ <list name="abstractBookDefinitionGroup" table="`library_abstractbookdefinitiongroup`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_abstractbookdefinitiongroup_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_abstractbookdefinitiongroup_idx`"/>
+ <one-to-many entity-name="Library_abstractBookDefinitionGroup"/>
+ </list>
+ </class>
+ <class entity-name="Library_abstractBookDefinitionGroup" lazy="false" table="`library_abstractbookdefinitiongroup`">
+ <meta attribute="featureMap">Library</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <many-to-one name="abstractBookDefinition" entity-name="BookDefinition" lazy="false" cascade="all" foreign-key="library_abstractbookdefinition" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`abstractbookdefinitiongroup_bookdefinition_abstractbookdefinition_uniquename`"/>
+ </many-to-one>
+ </class>
+ <subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.PublisherDefinitionImpl" entity-name="PublisherDefinition" abstract="false" lazy="false" extends="BookDefinition" discriminator-value="PublisherDefinition">
+ <meta attribute="eclassName">PublisherDefinition</meta>
+ <meta attribute="epackage">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`title`"/>
+ </property>
+ <many-to-one name="resourceLink" entity-name="BookDefinitionResourceLink" lazy="false" cascade="all" foreign-key="publisherdefinition_resourcelink" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`bookdefinitionresourcelink_resourcelink_e_id`"/>
+ </many-to-one>
+ </subclass>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..a9d8c06c8
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,148 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.BookDefinitionImpl" entity-name="BookDefinition" abstract="true" lazy="false" table="`bookdefinition`">
+ <meta attribute="eclassName" inherit="false">BookDefinition</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id name="uniqueName" type="java.lang.String">
+ <column not-null="true" unique="false" name="`uniquename`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="description" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`description`"/>
+ </property>
+ <property name="location" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`location`"/>
+ </property>
+ </class>
+ <joined-subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.AdultBooksImpl" entity-name="AdultBooks" abstract="false" lazy="false" extends="BookDefinition" table="`adultbooks`">
+ <meta attribute="eclassName" inherit="false">AdultBooks</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <key>
+ <column name="`bookdefinition_uniquename`"/>
+ </key>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="checkedout" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`checkedout`"/>
+ </property>
+ <property name="userid" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`userid`"/>
+ </property>
+ </joined-subclass>
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.ResourceLinkImpl" entity-name="ResourceLink" abstract="true" lazy="false" table="`resourcelink`">
+ <meta attribute="eclassName" inherit="false">ResourceLink</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <joined-subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.BookDefinitionResourceLinkImpl" entity-name="BookDefinitionResourceLink" abstract="false" lazy="false" extends="ResourceLink" table="`bookdefinitionresourcelink`">
+ <meta attribute="eclassName" inherit="false">BookDefinitionResourceLink</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <key>
+ <column name="`resourcelink_e_id`"/>
+ </key>
+ <property name="bookSubject" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`booksubject`"/>
+ </property>
+ </joined-subclass>
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.BooksInLibImpl" entity-name="BooksInLib" abstract="false" lazy="false" table="`booksinlib`">
+ <meta attribute="eclassName" inherit="false">BooksInLib</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="library" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="booksinlib_library">
+ <column name="`booksinlib_library_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`booksinlib_library_idx`"/>
+ <one-to-many entity-name="Library"/>
+ </list>
+ </class>
+ <joined-subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.ChildrenBooksImpl" entity-name="ChildrenBooks" abstract="false" lazy="false" extends="BookDefinition" table="`childrenbooks`">
+ <meta attribute="eclassName" inherit="false">ChildrenBooks</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <key>
+ <column name="`bookdefinition_uniquename`"/>
+ </key>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="cartoon" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`cartoon`"/>
+ </property>
+ <property name="popup" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`popup`"/>
+ </property>
+ <many-to-one name="publisherDefinitionRef" entity-name="PublisherDefinition" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="childrenbooks_publisherdefinitionref" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`publisherdefinition_publisherdefinitionref_uniquename`"/>
+ </many-to-one>
+ </joined-subclass>
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id name="uniqueName" type="java.lang.String">
+ <column not-null="true" unique="false" name="`uniquename`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="library" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_library">
+ <column name="`library_library_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_library_idx`"/>
+ <one-to-many entity-name="Library"/>
+ </list>
+ <list name="abstractBookDefinitionGroup" table="`library_abstractbookdefinitiongroup`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_abstractbookdefinitiongroup_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_abstractbookdefinitiongroup_idx`"/>
+ <one-to-many entity-name="Library_abstractBookDefinitionGroup"/>
+ </list>
+ </class>
+ <class entity-name="Library_abstractBookDefinitionGroup" lazy="false" table="`library_abstractbookdefinitiongroup`">
+ <meta attribute="featureMap" inherit="false">Library</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <many-to-one name="abstractBookDefinition" entity-name="BookDefinition" lazy="false" cascade="all" foreign-key="library_abstractbookdefinition" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`abstractbookdefinitiongroup_bookdefinition_abstractbookdefinition_uniquename`"/>
+ </many-to-one>
+ </class>
+ <joined-subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.PublisherDefinitionImpl" entity-name="PublisherDefinition" abstract="false" lazy="false" extends="BookDefinition" table="`publisherdefinition`">
+ <meta attribute="eclassName" inherit="false">PublisherDefinition</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <key>
+ <column name="`bookdefinition_uniquename`"/>
+ </key>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`title`"/>
+ </property>
+ <many-to-one name="resourceLink" entity-name="BookDefinitionResourceLink" lazy="false" cascade="all" foreign-key="publisherdefinition_resourcelink" insert="true" update="true" not-null="true" unique="true">
+ <column not-null="true" unique="false" name="`bookdefinitionresourcelink_resourcelink_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..a9d8c06c8
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/JuliaAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,148 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.BookDefinitionImpl" entity-name="BookDefinition" abstract="true" lazy="false" table="`bookdefinition`">
+ <meta attribute="eclassName" inherit="false">BookDefinition</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id name="uniqueName" type="java.lang.String">
+ <column not-null="true" unique="false" name="`uniquename`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="description" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`description`"/>
+ </property>
+ <property name="location" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`location`"/>
+ </property>
+ </class>
+ <joined-subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.AdultBooksImpl" entity-name="AdultBooks" abstract="false" lazy="false" extends="BookDefinition" table="`adultbooks`">
+ <meta attribute="eclassName" inherit="false">AdultBooks</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <key>
+ <column name="`bookdefinition_uniquename`"/>
+ </key>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="checkedout" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`checkedout`"/>
+ </property>
+ <property name="userid" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`userid`"/>
+ </property>
+ </joined-subclass>
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.ResourceLinkImpl" entity-name="ResourceLink" abstract="true" lazy="false" table="`resourcelink`">
+ <meta attribute="eclassName" inherit="false">ResourceLink</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <joined-subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.BookDefinitionResourceLinkImpl" entity-name="BookDefinitionResourceLink" abstract="false" lazy="false" extends="ResourceLink" table="`bookdefinitionresourcelink`">
+ <meta attribute="eclassName" inherit="false">BookDefinitionResourceLink</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <key>
+ <column name="`resourcelink_e_id`"/>
+ </key>
+ <property name="bookSubject" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`booksubject`"/>
+ </property>
+ </joined-subclass>
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.BooksInLibImpl" entity-name="BooksInLib" abstract="false" lazy="false" table="`booksinlib`">
+ <meta attribute="eclassName" inherit="false">BooksInLib</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="library" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="booksinlib_library">
+ <column name="`booksinlib_library_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`booksinlib_library_idx`"/>
+ <one-to-many entity-name="Library"/>
+ </list>
+ </class>
+ <joined-subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.ChildrenBooksImpl" entity-name="ChildrenBooks" abstract="false" lazy="false" extends="BookDefinition" table="`childrenbooks`">
+ <meta attribute="eclassName" inherit="false">ChildrenBooks</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <key>
+ <column name="`bookdefinition_uniquename`"/>
+ </key>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="cartoon" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`cartoon`"/>
+ </property>
+ <property name="popup" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`popup`"/>
+ </property>
+ <many-to-one name="publisherDefinitionRef" entity-name="PublisherDefinition" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="childrenbooks_publisherdefinitionref" insert="true" update="true" not-null="true">
+ <column not-null="true" unique="false" name="`publisherdefinition_publisherdefinitionref_uniquename`"/>
+ </many-to-one>
+ </joined-subclass>
+ <class name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <id name="uniqueName" type="java.lang.String">
+ <column not-null="true" unique="false" name="`uniquename`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <list name="library" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_library">
+ <column name="`library_library_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_library_idx`"/>
+ <one-to-many entity-name="Library"/>
+ </list>
+ <list name="abstractBookDefinitionGroup" table="`library_abstractbookdefinitiongroup`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_abstractbookdefinitiongroup_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_abstractbookdefinitiongroup_idx`"/>
+ <one-to-many entity-name="Library_abstractBookDefinitionGroup"/>
+ </list>
+ </class>
+ <class entity-name="Library_abstractBookDefinitionGroup" lazy="false" table="`library_abstractbookdefinitiongroup`">
+ <meta attribute="featureMap" inherit="false">Library</meta>
+ <id type="long">
+ <generator class="native"/>
+ </id>
+ <version name="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="fme_feature" type="java.lang.String"/>
+ <many-to-one name="abstractBookDefinition" entity-name="BookDefinition" lazy="false" cascade="all" foreign-key="library_abstractbookdefinition" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`abstractbookdefinitiongroup_bookdefinition_abstractbookdefinition_uniquename`"/>
+ </many-to-one>
+ </class>
+ <joined-subclass name="com.ibm.websphere.appserver.schemas._6._0.ibm.portal.test.impl.PublisherDefinitionImpl" entity-name="PublisherDefinition" abstract="false" lazy="false" extends="BookDefinition" table="`publisherdefinition`">
+ <meta attribute="eclassName" inherit="false">PublisherDefinition</meta>
+ <meta attribute="epackage" inherit="false">http://www.ibm.com/websphere/appserver/schemas/6.0/ibm-portal-test.xsd</meta>
+ <key>
+ <column name="`bookdefinition_uniquename`"/>
+ </key>
+ <property name="title" lazy="false" insert="true" update="true" not-null="false" unique="false" type="java.lang.String">
+ <column not-null="false" unique="false" name="`title`"/>
+ </property>
+ <many-to-one name="resourceLink" entity-name="BookDefinitionResourceLink" lazy="false" cascade="all" foreign-key="publisherdefinition_resourcelink" insert="true" update="true" not-null="true" unique="true">
+ <column not-null="true" unique="false" name="`bookdefinitionresourcelink_resourcelink_e_id`"/>
+ </many-to-one>
+ </joined-subclass>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..2422801d2
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="bk_athor" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`bk_thr_d`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`lb_wr_d`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`tst_indx`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="lbrr_bks">
+ <column name="`lb_bk_d`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`lb_bk_dx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`bk_thr_d`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`wr_bk_dx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..d80593e71
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="bk_athor" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`bk_thr_d`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`lbrry_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`tst_indx`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writr_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="lbrr_bks">
+ <column name="`lb_bk_d`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`lb_bk_dx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`bk_thr_d`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`wr_bk_dx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..68dd3d1e1
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryCheckNameAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="bk_athor" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`bk_thr_d`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`lb_wr_d`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`tst_indx`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="lbrr_bks">
+ <column name="`lb_bk_d`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`lb_bk_dx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`bk_thr_d`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`wr_bk_dx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..8e8c2d6d7
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`categ`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`bo_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`libra`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="libradtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`li_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`li_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`l_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`write`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writedtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`bo_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`w_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..0a6515c8e
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`categ`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`bo_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`libra`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`li_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`wr_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`li_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`l_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`write`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`bo_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`w_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..68f6122ec
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryColLengthAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`categ`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`bo_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`libra`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`li_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`li_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`l_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`write`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="myID" column="myID" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`bo_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`w_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..c8ecc0539
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..7aa6cdb03
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..d4e470760
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDBothAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..c8ecc0539
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..7aa6cdb03
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..d4e470760
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryContainerFeatureIDFeatureIDAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..ee32b44a2
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`" length="50"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`" length="50"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`" length="50"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <cache usage="read-write"/>
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..5107ea0dc
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`" length="50"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`" length="50"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`" length="50"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <cache usage="read-write"/>
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..ed75fabbe
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryFKAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`" length="50"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`" length="50"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`" length="50"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <cache usage="read-write"/>
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..aa01791a3
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="false" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="false" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..0008a8a88
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="false" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="false" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..ff9021da6
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryGlobalEagerAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="false" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="false" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..3035e65bb
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`BOOK`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`TITLE`"/>
+ </id>
+ <discriminator type="string">
+ <column name="DTYPE" index="BOOKDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`PAGES`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`CATEGORY`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TEST`"/>
+ </property>
+ <join table="WRITER_BOOKS" inverse="true" optional="true">
+ <key update="true">
+ <column name="`BOOK_TITLE`" not-null="true" unique="false"/>
+ </key>
+ <many-to-one name="author" entity-name="Writer" lazy="false" insert="true" update="true" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOK_AUTHOR">
+ <column not-null="false" unique="false" name="`WRITER_E_ID`"/>
+ </many-to-one>
+ </join>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`LIBRARY`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="DTYPE" index="LIBRARYDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`NAME`"/>
+ </property>
+ <bag name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true" foreign-key="schrijvers">
+ <column name="`LIBRARY_WRITERS_E_ID`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Writer"/>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true" foreign-key="LIBRARY_BOOKS">
+ <column name="`LIBRARY_BOOKS_E_ID`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`WRITER`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="DTYPE" index="WRITERDTYPE" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`NAME`"/>
+ </property>
+ <bag name="books" table="`WRITER_BOOKS`" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <cache usage="read-write"/>
+ <key update="true">
+ <column name="`WRITER_E_ID`" not-null="true" unique="false"/>
+ </key>
+ <many-to-many entity-name="Book" unique="true">
+ <column name="`BOOK_TITLE`" not-null="true" unique="false"/>
+ </many-to-many>
+ </bag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..fef9bf699
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`BOOK`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`TITLE`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`PAGES`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`CATEGORY`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TEST`"/>
+ </property>
+ <join table="`WRITER_BOOKS`" inverse="true" optional="true">
+ <key update="true">
+ <column name="`BOOK_TITLE`" not-null="true" unique="false"/>
+ </key>
+ <many-to-one name="author" entity-name="Writer" lazy="false" insert="true" update="true" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOK_AUTHOR">
+ <column not-null="false" unique="false" name="`WRITER_E_ID`"/>
+ </many-to-one>
+ </join>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`LIBRARY`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`NAME`"/>
+ </property>
+ <bag name="writers" fetch="subselect" table="`ABC`" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true">
+ <column name="`LIBRARY_E_ID`" not-null="true" unique="false"/>
+ </key>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`WRITER_E_ID`" not-null="true" unique="false"/>
+ </many-to-many>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true" foreign-key="LIBRARY_BOOKS">
+ <column name="`LIBRARY_BOOKS_E_ID`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`WRITER`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`NAME`"/>
+ </property>
+ <bag name="books" table="`WRITER_BOOKS`" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <cache usage="read-write"/>
+ <key update="true">
+ <column name="`WRITER_E_ID`" not-null="true" unique="false"/>
+ </key>
+ <many-to-many entity-name="Book" unique="true">
+ <column name="`BOOK_TITLE`" not-null="true" unique="false"/>
+ </many-to-many>
+ </bag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..84e44d882
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryJoinTableNamingAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`BOOK`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`TITLE`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`PAGES`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`CATEGORY`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`TEST`"/>
+ </property>
+ <join table="`WRITER_BOOKS`" inverse="true" optional="true">
+ <key update="true">
+ <column name="`BOOK_TITLE`" not-null="true" unique="false"/>
+ </key>
+ <many-to-one name="author" entity-name="Writer" lazy="false" insert="true" update="true" cascade="merge,persist,save-update,lock,refresh" foreign-key="BOOK_AUTHOR">
+ <column not-null="false" unique="false" name="`WRITER_E_ID`"/>
+ </many-to-one>
+ </join>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`LIBRARY`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`NAME`"/>
+ </property>
+ <bag name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true" foreign-key="schrijvers">
+ <column name="`LIBRARY_WRITERS_E_ID`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Writer"/>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <cache usage="read-write"/>
+ <key update="true" foreign-key="LIBRARY_BOOKS">
+ <column name="`LIBRARY_BOOKS_E_ID`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`WRITER`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <cache usage="read-write"/>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`NAME`"/>
+ </property>
+ <bag name="books" table="`WRITER_BOOKS`" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <cache usage="read-write"/>
+ <key update="true">
+ <column name="`WRITER_E_ID`" not-null="true" unique="false"/>
+ </key>
+ <many-to-many entity-name="Book" unique="true">
+ <column name="`BOOK_TITLE`" not-null="true" unique="false"/>
+ </many-to-many>
+ </bag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..fafce0ec2
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator column="`dtype`" type="string"/>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator column="`dtype`" type="string"/>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Writer"/>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator column="`dtype`" type="string"/>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..29e9bdebd
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Writer"/>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <idbag name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <collection-id column="ID" type="long">
+ <generator class="increment"/>
+ </collection-id>
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <many-to-many entity-name="Book"/>
+ </idbag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..532d39296
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryLargeAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Writer"/>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..af279700f
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Writer"/>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..cb322220d
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..76f63335f
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsBagAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Writer"/>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..8038a404b
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator column="`dtype`" type="string"/>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator column="`dtype`" type="string"/>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Writer"/>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator column="`dtype`" type="string"/>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <idbag name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <collection-id column="ID" type="long">
+ <generator class="increment"/>
+ </collection-id>
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <many-to-many entity-name="Book"/>
+ </idbag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..29e9bdebd
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Writer"/>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <idbag name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <collection-id column="ID" type="long">
+ <generator class="increment"/>
+ </collection-id>
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <many-to-many entity-name="Book"/>
+ </idbag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..29e9bdebd
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryListAsIdBagAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="title" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </property>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="true" unique="false" type="int">
+ <column not-null="true" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="true" insert="true" update="true" unique="false">
+ <column not-null="true" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="true" update="true" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <bag name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Writer"/>
+ </bag>
+ <bag name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <one-to-many entity-name="Book"/>
+ </bag>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <idbag name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <collection-id column="ID" type="long">
+ <generator class="increment"/>
+ </collection-id>
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <many-to-many entity-name="Book"/>
+ </idbag>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..c8ecc0539
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..7aa6cdb03
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..d4e470760
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNonResolvingAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..c8ecc0539
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..7aa6cdb03
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..d4e470760
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryNotifyingTestAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..888e14745
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="library.Book" abstract="false" lazy="false" discriminator-value="library.Book" table="`library_book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="library_bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="library.Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="library_book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="library.Library" abstract="false" lazy="false" discriminator-value="library.Library" table="`library_library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="library_librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="library.Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="library.Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="library.Writer" abstract="false" lazy="false" discriminator-value="library.Writer" table="`library_writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="library_writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="library.Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..b39306408
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="library.Book" abstract="false" lazy="false" table="`library_book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="library.Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="library_book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="library.Library" abstract="false" lazy="false" table="`library_library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <many-to-many entity-name="library.Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="library.Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="library.Writer" abstract="false" lazy="false" table="`library_writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="library.Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..9e820c8bc
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryQualifyActionHB_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="library.Book" abstract="false" lazy="false" table="`library_book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="library.Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="library_book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="library.Library" abstract="false" lazy="false" table="`library_library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="library.Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="library.Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="library.Writer" abstract="false" lazy="false" table="`library_writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="library.Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..c8ecc0539
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..7aa6cdb03
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..d4e470760
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..14f4e0c9c
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="delete,merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="delete,merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..cb0da7851
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="delete,merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="delete,merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..3a77ab51f
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceCutPasteAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="delete,merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="delete,merge,persist,save-update,lock,refresh">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..8ef35f329
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<!-- Generated by Teneo on Wed Mar 28 18:21:01 CEST 2007 -->
+<hibernate-mapping>
+ <typedef name="rental.RentalBicycleTypeObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/rental</param>
+ <param name="edatatype">RentalBicycleTypeObject</param>
+ </typedef>
+ <typedef name="rental.RentalCarSizeObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/rental</param>
+ <param name="edatatype">RentalCarSizeObject</param>
+ </typedef>
+ <class entity-name="RentalUnit" abstract="true" lazy="false" discriminator-value="RentalUnit" table="`rentalunit`">
+ <meta attribute="eclassName">RentalUnit</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <id name="description" type="java.lang.String">
+ <column not-null="true" unique="false" name="`description`"/>
+ </id>
+ <discriminator column="`dtype`" type="string"/>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ </class>
+ <subclass entity-name="RentalBicycle" abstract="false" lazy="false" extends="RentalUnit" discriminator-value="RentalBicycle">
+ <meta attribute="eclassName">RentalBicycle</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <property name="type" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`type`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.rental.RentalBicycleType</param>
+ </type>
+ </property>
+ </subclass>
+ <class entity-name="RentalBusiness" abstract="false" lazy="false" discriminator-value="RentalBusiness" table="`rentalbusiness`">
+ <meta attribute="eclassName">RentalBusiness</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator column="`dtype`" type="string"/>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <subclass entity-name="RentalCar" abstract="false" lazy="false" extends="RentalUnit" discriminator-value="RentalCar">
+ <meta attribute="eclassName">RentalCar</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <property name="size" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`size`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.rental.RentalCarSize</param>
+ </type>
+ </property>
+ </subclass>
+ <class entity-name="RentalContract" abstract="false" lazy="false" discriminator-value="RentalContract" table="`rentalcontract`">
+ <meta attribute="eclassName">RentalContract</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator column="`dtype`" type="string"/>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="rentToBusinessPartner" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`renttobusinesspartner`"/>
+ </property>
+ <property name="startDate" lazy="false" insert="true" update="true" not-null="true" unique="false" type="timestamp">
+ <column not-null="true" unique="false" name="`startdate`"/>
+ </property>
+ <property name="endDate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`enddate`"/>
+ </property>
+ <property name="cost" lazy="false" insert="true" update="true" not-null="false" unique="false" type="float">
+ <column not-null="false" unique="false" name="`cost`"/>
+ </property>
+ <list name="rentalUnits" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`rentalcontract_rentalunits_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`rentalcontract_rentalunits_idx`"/>
+ <one-to-many class="RentalUnit"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..e2957d606
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<!-- Generated by Teneo on Wed Mar 28 18:21:54 CEST 2007 -->
+<hibernate-mapping>
+ <typedef name="rental.RentalBicycleTypeObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/rental</param>
+ <param name="edatatype">RentalBicycleTypeObject</param>
+ </typedef>
+ <typedef name="rental.RentalCarSizeObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/rental</param>
+ <param name="edatatype">RentalCarSizeObject</param>
+ </typedef>
+ <class entity-name="RentalUnit" abstract="true" lazy="false" table="`rentalunit`">
+ <meta attribute="eclassName">RentalUnit</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <id name="description" type="java.lang.String">
+ <column not-null="true" unique="false" name="`description`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ </class>
+ <joined-subclass entity-name="RentalBicycle" abstract="false" lazy="false" extends="RentalUnit" table="`rentalbicycle`">
+ <meta attribute="eclassName">RentalBicycle</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <key>
+ <column name="`rentalunit_description`"/>
+ </key>
+ <property name="type" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`type`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.rental.RentalBicycleType</param>
+ </type>
+ </property>
+ </joined-subclass>
+ <class entity-name="RentalBusiness" abstract="false" lazy="false" table="`rentalbusiness`">
+ <meta attribute="eclassName">RentalBusiness</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <joined-subclass entity-name="RentalCar" abstract="false" lazy="false" extends="RentalUnit" table="`rentalcar`">
+ <meta attribute="eclassName">RentalCar</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <key>
+ <column name="`rentalunit_description`"/>
+ </key>
+ <property name="size" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`size`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.rental.RentalCarSize</param>
+ </type>
+ </property>
+ </joined-subclass>
+ <class entity-name="RentalContract" abstract="false" lazy="false" table="`rentalcontract`">
+ <meta attribute="eclassName">RentalContract</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="rentToBusinessPartner" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`renttobusinesspartner`"/>
+ </property>
+ <property name="startDate" lazy="false" insert="true" update="true" not-null="true" unique="false" type="timestamp">
+ <column not-null="true" unique="false" name="`startdate`"/>
+ </property>
+ <property name="endDate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`enddate`"/>
+ </property>
+ <property name="cost" lazy="false" insert="true" update="true" not-null="false" unique="false" type="float">
+ <column not-null="false" unique="false" name="`cost`"/>
+ </property>
+ <list name="rentalUnits" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`rentalcontract_rentalunits_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`rentalcontract_rentalunits_idx`"/>
+ <one-to-many class="RentalUnit"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..1f3bd847b
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceReferenceAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<!-- Generated by Teneo on Wed Mar 28 18:19:49 CEST 2007 -->
+<hibernate-mapping>
+ <typedef name="rental.RentalBicycleTypeObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/rental</param>
+ <param name="edatatype">RentalBicycleTypeObject</param>
+ </typedef>
+ <typedef name="rental.RentalCarSizeObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/rental</param>
+ <param name="edatatype">RentalCarSizeObject</param>
+ </typedef>
+ <class entity-name="RentalUnit" abstract="true" lazy="false" table="`rentalunit`">
+ <meta attribute="eclassName">RentalUnit</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <id name="description" type="java.lang.String">
+ <column not-null="true" unique="false" name="`description`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ </class>
+ <joined-subclass entity-name="RentalBicycle" abstract="false" lazy="false" extends="RentalUnit" table="`rentalbicycle`">
+ <meta attribute="eclassName">RentalBicycle</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <key>
+ <column name="`rentalunit_description`"/>
+ </key>
+ <property name="type" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`type`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.rental.RentalBicycleType</param>
+ </type>
+ </property>
+ </joined-subclass>
+ <class entity-name="RentalBusiness" abstract="false" lazy="false" table="`rentalbusiness`">
+ <meta attribute="eclassName">RentalBusiness</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ </class>
+ <joined-subclass entity-name="RentalCar" abstract="false" lazy="false" extends="RentalUnit" table="`rentalcar`">
+ <meta attribute="eclassName">RentalCar</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <key>
+ <column name="`rentalunit_description`"/>
+ </key>
+ <property name="size" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`size`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserType">
+ <param name="enumClass">org.eclipse.emf.teneo.rental.RentalCarSize</param>
+ </type>
+ </property>
+ </joined-subclass>
+ <class entity-name="RentalContract" abstract="false" lazy="false" table="`rentalcontract`">
+ <meta attribute="eclassName">RentalContract</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/rental</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="rentToBusinessPartner" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`renttobusinesspartner`"/>
+ </property>
+ <property name="startDate" lazy="false" insert="true" update="true" not-null="true" unique="false" type="timestamp">
+ <column not-null="true" unique="false" name="`startdate`"/>
+ </property>
+ <property name="endDate" lazy="false" insert="true" update="true" not-null="false" unique="false" type="timestamp">
+ <column not-null="false" unique="false" name="`enddate`"/>
+ </property>
+ <property name="cost" lazy="false" insert="true" update="true" not-null="false" unique="false" type="float">
+ <column not-null="false" unique="false" name="`cost`"/>
+ </property>
+ <list name="rentalUnits" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`rentalcontract_rentalunits_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`rentalcontract_rentalunits_idx`"/>
+ <one-to-many class="RentalUnit"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..c8ecc0539
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..7aa6cdb03
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..d4e470760
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibraryResourceVisitTreeAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_a_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_a_o_hibernate.hbm.xml
new file mode 100755
index 000000000..c8ecc0539
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_a_o_hibernate.hbm.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" discriminator-value="Book" table="`book`">
+ <meta attribute="eclassName">Book</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="bookdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" discriminator-value="Library" table="`library`">
+ <meta attribute="eclassName">Library</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="librarydtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="schrijvers">
+ <column name="`library_writers_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <one-to-many entity-name="Writer"/>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" discriminator-value="Writer" table="`writer`">
+ <meta attribute="eclassName">Writer</meta>
+ <meta attribute="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId">true</meta>
+ <generator class="native"/>
+ </id>
+ <discriminator type="string">
+ <column name="dtype" index="writerdtype" length="255" not-null="true"/>
+ </discriminator>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_e_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_e_o_hibernate.hbm.xml
new file mode 100755
index 000000000..7aa6cdb03
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_e_o_hibernate.hbm.xml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false" insert="true" update="true" unique="false">
+ <column not-null="false" unique="false" name="`category`"/>
+ <type name="org.eclipse.emf.teneo.hibernate.mapping.ENumUserIntegerType">
+ <param name="enumClass">org.eclipse.emf.teneo.samples.emf.sample.library.BookCategory</param>
+ <param name="eclassifier">BookCategory</param>
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ </type>
+ </property>
+ <many-to-one name="author" entity-name="Writer" lazy="false" cascade="merge,persist,save-update,lock,refresh" foreign-key="book_author" insert="false" update="false" not-null="false">
+ <column not-null="false" unique="false" name="`book_author_e_id`"/>
+ </many-to-one>
+ <property name="test" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`test`"/>
+ </property>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.LibraryImpl" entity-name="Library" abstract="false" lazy="false" table="`library`">
+ <meta attribute="eclassName" inherit="false">Library</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="writers" fetch="subselect" table="`abc`" lazy="true" cascade="all,delete-orphan">
+ <key update="true">
+ <column name="`library_e_id`" not-null="true" unique="false"/>
+ </key>
+ <list-index column="`test_index`"/>
+ <many-to-many entity-name="Writer" unique="true" foreign-key="schrijvers">
+ <column name="`writer_e_id`" not-null="true" unique="false"/>
+ </many-to-many>
+ </list>
+ <list name="books" lazy="true" cascade="all,delete-orphan">
+ <key update="true" foreign-key="library_books">
+ <column name="`library_books_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`library_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.WriterImpl" entity-name="Writer" abstract="false" lazy="false" table="`writer`">
+ <meta attribute="eclassName" inherit="false">Writer</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id type="long" name="e_id" column="e_id" access="org.eclipse.emf.teneo.hibernate.mapping.identifier.IdentifierPropertyHandler">
+ <meta attribute="syntheticId" inherit="false">true</meta>
+ <generator class="native"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="name" lazy="false" insert="true" update="true" not-null="true" unique="false" type="java.lang.String">
+ <column not-null="true" unique="false" name="`name`"/>
+ </property>
+ <list name="books" lazy="true" cascade="merge,persist,save-update,lock,refresh">
+ <key update="true">
+ <column name="`book_author_e_id`" not-null="false" unique="false"/>
+ </key>
+ <list-index column="`writer_books_idx`"/>
+ <one-to-many entity-name="Book"/>
+ </list>
+ </class>
+</hibernate-mapping> \ No newline at end of file
diff --git a/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_s_o_hibernate.hbm.xml b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_s_o_hibernate.hbm.xml
new file mode 100755
index 000000000..d4e470760
--- /dev/null
+++ b/tests/org.eclipse.emf.teneo.hibernate.test/hbm/org.eclipse.emf.teneo.test.emf.sample/LibrarySerializationAction_mysql_s_o_hibernate.hbm.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+
+<hibernate-mapping auto-import="false">
+ <typedef name="library.BookCategoryObject" class="org.eclipse.emf.teneo.hibernate.mapping.DefaultToStringUserType">
+ <param name="epackage">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</param>
+ <param name="edatatype">BookCategoryObject</param>
+ </typedef>
+ <class name="org.eclipse.emf.teneo.samples.emf.sample.library.impl.BookImpl" entity-name="Book" abstract="false" lazy="false" table="`book`">
+ <meta attribute="eclassName" inherit="false">Book</meta>
+ <meta attribute="epackage" inherit="false">http://www.eclipse.org/emf/teneo/samples/emf/sample/Library</meta>
+ <id name="title" type="java.lang.String">
+ <column not-null="true" unique="false" name="`title`"/>
+ </id>
+ <version name="e_version" column="e_version" access="org.eclipse.emf.teneo.hibernate.mapping.property.VersionPropertyHandler">
+ <meta attribute="syntheticVersion" inherit="false">true</meta>
+ </version>
+ <property name="pages" lazy="false" insert="true" update="true" not-null="false" unique="false" type="int">
+ <column not-null="false" unique="false" name="`pages`"/>
+ </property>
+ <property name="category" lazy="false" not-null="false"