diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/EmbeddableEntity.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/EmbeddableEntity.java
index 8fd4f09..7a98373 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/EmbeddableEntity.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/EmbeddableEntity.java
@@ -516,15 +516,20 @@
 	List<String> buildMappingElementNamesOrder() {
 
 		List<String> names = new ArrayList<String>();
+		names.add(IdMapping.ID);
+		names.add(EmbeddedIDMapping.EMBEDDED_ID);
 		names.add(BasicMapping.BASIC);
 		names.add(BasicCollectionMapping.BASIC_COLLECTION);
 		names.add(BasicMapMapping.BASIC_MAP);
-		names.add(EmbeddedMapping.EMBEDDED);
-		names.add(ElementCollectionMapping.ELEMENT_COLLECTION);
-		names.add(ManyToManyMapping.MANY_TO_MANY);
+		names.add(VersionMapping.VERSION);
 		names.add(ManyToOneMapping.MANY_TO_ONE);
 		names.add(OneToManyMapping.ONE_TO_MANY);
 		names.add(OneToOneMapping.ONE_TO_ONE);
+		names.add(VariableOneToOneMapping.VARIABLE_ONE_TO_ONE);
+		names.add(ManyToManyMapping.MANY_TO_MANY);
+		names.add(ElementCollectionMapping.ELEMENT_COLLECTION);
+		names.add(EmbeddedMapping.EMBEDDED);
+		names.add(TransformationMapping.TRANSFORMATION);
 		names.add(TransientMapping.TRANSIENT);
 		
 		return names;
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/MappedSuperClassEntity.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/MappedSuperClassEntity.java
index ba82709..d29fae3 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/MappedSuperClassEntity.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/MappedSuperClassEntity.java
@@ -421,22 +421,6 @@
 		return super.buildMapping(elementName, index);
 	}
 
-	/**
-	 * {@inheritDoc}
-	 */
-	@Override
-	List<String> buildMappingElementNamesOrder() {
-		List<String> names = super.buildMappingElementNamesOrder();
-		
-		names.add(EmbeddedIDMapping.EMBEDDED_ID);
-		names.add(IdMapping.ID);
-		names.add(TransformationMapping.TRANSFORMATION);
-		names.add(VariableOneToOneMapping.VARIABLE_ONE_TO_ONE);
-		names.add(VersionMapping.VERSION);
-		
-		return names;
-	}
-
 	private MultitenancyPolicy buildMultitenant() {
 		return new MultitenancyPolicy(this);
 	}
