Removed dependencies on internal xml classes and included updated code from recent development.
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/driver/MySQL.java b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/driver/MySQL.java
index 53bd544..e936d63 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/driver/MySQL.java
+++ b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/driver/MySQL.java
@@ -303,7 +303,7 @@
 
 	static class Factory implements WorkbenchDriverAdapterFactory {
 		private static final String[] VENDORS = {
-				"MySql"
+				"MySQL"
 			};
 		@Override
 		public String[] getSupportedVendors() {
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/ELDatabase.java b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/ELDatabase.java
index 4b9f225..29219a9 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/ELDatabase.java
+++ b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/ELDatabase.java
@@ -672,7 +672,7 @@
 	 * @see java.sql.DatabaseMetaData#getSchemas()
 	 */
 	public Iterator<String> schemaNames() {
-		if (!getDatabasePlatform().getName().equals("MySql")) {
+		if (!getDatabasePlatform().getName().equals("MySQL")) {
 			return new ArrayIterator<String>(this.getExternalDatabase().getSchemaNames());
 		} else {
 			return new ArrayIterator<String>(this.getExternalDatabase().getCatalogNames());
@@ -770,7 +770,7 @@
 	 * creating it if necessary; use the table's fully-qualified name
 	 */
 	private ELTable qualifiedTableFor(ExternalTableDescription externalTableDescription) {
-		if (getDatabasePlatform().getName().equals("MySql")) {
+		if (getDatabasePlatform().getName().equals("MySQL")) {
 			return this.tableNamedForImport(null, externalTableDescription.getCatalogName(), externalTableDescription.getName());
 		} else {
 			return this.tableNamedForImport(externalTableDescription.getCatalogName(), externalTableDescription.getSchemaName(), externalTableDescription.getName());
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/AbstractJDBCTypeToJavaTypeDeclarationMapping.java b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/AbstractJDBCTypeToJavaTypeDeclarationMapping.java
index abdaee9..89627e2 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/AbstractJDBCTypeToJavaTypeDeclarationMapping.java
+++ b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/AbstractJDBCTypeToJavaTypeDeclarationMapping.java
@@ -12,6 +12,7 @@
 ******************************************************************************/
 package org.eclipse.persistence.tools.db.model.platformsmodel;
 
+import org.eclipse.persistence.tools.utility.XMLTools;
 import org.eclipse.persistence.tools.utility.node.AbstractNode;
 import org.w3c.dom.Node;
 
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabasePlatform.java b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabasePlatform.java
index 133d27d..790fee1 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabasePlatform.java
+++ b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabasePlatform.java
@@ -20,6 +20,7 @@
 import java.util.Vector;
 
 import org.eclipse.persistence.tools.utility.CollectionTools;
+import org.eclipse.persistence.tools.utility.XMLTools;
 import org.eclipse.persistence.tools.utility.iterators.CloneIterator;
 import org.eclipse.persistence.tools.utility.iterators.TransformationIterator;
 import org.eclipse.persistence.tools.utility.node.AbstractNode;
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabasePlatformRepository.java b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabasePlatformRepository.java
index 0e1f29d..4d536b3 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabasePlatformRepository.java
+++ b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabasePlatformRepository.java
@@ -24,6 +24,7 @@
 import org.eclipse.persistence.tools.utility.CollectionTools;
 import org.eclipse.persistence.tools.utility.FileTools;
 import org.eclipse.persistence.tools.utility.HashBag;
+import org.eclipse.persistence.tools.utility.XMLTools;
 import org.eclipse.persistence.tools.utility.iterators.CloneIterator;
 import org.eclipse.persistence.tools.utility.iterators.TransformationIterator;
 import org.eclipse.persistence.tools.utility.node.AbstractNode;
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabaseType.java b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabaseType.java
index 926477b..d07eaba 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabaseType.java
+++ b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/DatabaseType.java
@@ -14,6 +14,7 @@
 
 import java.util.Iterator;
 
+import org.eclipse.persistence.tools.utility.XMLTools;
 import org.eclipse.persistence.tools.utility.node.AbstractNode;
 import org.w3c.dom.Node;
 
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCType.java b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCType.java
index 050154a..0862c25 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCType.java
+++ b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCType.java
@@ -12,6 +12,7 @@
 ******************************************************************************/
 package org.eclipse.persistence.tools.db.model.platformsmodel;
 
+import org.eclipse.persistence.tools.utility.XMLTools;
 import org.eclipse.persistence.tools.utility.node.AbstractNode;
 import org.w3c.dom.Node;
 
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCTypeRepository.java b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCTypeRepository.java
index 71cbf1c..ce639a5 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCTypeRepository.java
+++ b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCTypeRepository.java
@@ -22,6 +22,7 @@
 
 import org.eclipse.persistence.tools.utility.CollectionTools;
 import org.eclipse.persistence.tools.utility.StringTools;
+import org.eclipse.persistence.tools.utility.XMLTools;
 import org.eclipse.persistence.tools.utility.iterators.CloneIterator;
 import org.eclipse.persistence.tools.utility.iterators.TransformationIterator;
 import org.eclipse.persistence.tools.utility.node.AbstractNode;
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCTypeToDatabaseTypeMapping.java b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCTypeToDatabaseTypeMapping.java
index 51c30f1..9c16142 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCTypeToDatabaseTypeMapping.java
+++ b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JDBCTypeToDatabaseTypeMapping.java
@@ -12,6 +12,7 @@
 ******************************************************************************/
 package org.eclipse.persistence.tools.db.model.platformsmodel;
 
+import org.eclipse.persistence.tools.utility.XMLTools;
 import org.eclipse.persistence.tools.utility.node.AbstractNode;
 import org.w3c.dom.Node;
 
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JavaTypeDeclaration.java b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JavaTypeDeclaration.java
index 53c5cb1..e8285c4 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JavaTypeDeclaration.java
+++ b/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/JavaTypeDeclaration.java
@@ -12,6 +12,7 @@
 ******************************************************************************/
 package org.eclipse.persistence.tools.db.model.platformsmodel;
 
+import org.eclipse.persistence.tools.utility.XMLTools;
 import org.eclipse.persistence.tools.utility.node.AbstractNode;
 import org.w3c.dom.Node;
 
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/platforms/mysql.xml b/tools/org.eclipse.persistence.tools.gen.db/src/platforms/mysql.xml
index 12076e7..5c6da7d 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/platforms/mysql.xml
+++ b/tools/org.eclipse.persistence.tools.gen.db/src/platforms/mysql.xml
@@ -1,6 +1,6 @@
 <?xml version = '1.0' encoding = 'UTF-8'?>
 <database-platform>
-   <name>MySql</name>
+   <name>MySQL</name>
    <runtime-platform-class>org.eclipse.persistence.platform.database.MySQLPlatform</runtime-platform-class>
    <supports-native-sequencing>true</supports-native-sequencing>
    <database-types>
diff --git a/tools/org.eclipse.persistence.tools.gen/src/org/eclipse/persistence/tools/gen/DatabaseType.java b/tools/org.eclipse.persistence.tools.gen/src/org/eclipse/persistence/tools/gen/DatabaseType.java
index 4fb50ce..2dab3a1 100644
--- a/tools/org.eclipse.persistence.tools.gen/src/org/eclipse/persistence/tools/gen/DatabaseType.java
+++ b/tools/org.eclipse.persistence.tools.gen/src/org/eclipse/persistence/tools/gen/DatabaseType.java
@@ -32,7 +32,7 @@
 @SuppressWarnings("nls")
 public enum DatabaseType {
 
-	MySql("MySql") {
+	MySql("MySQL") {
 		@Override
 		public String getDatabaseDriver() {
 			return "com.mysql.jdbc.Driver";
diff --git a/tools/org.eclipse.persistence.tools.gen/src/org/eclipse/persistence/tools/gen/internal/util/StringUtil.java b/tools/org.eclipse.persistence.tools.gen/src/org/eclipse/persistence/tools/gen/internal/util/StringUtil.java
index d4b4827..d298e57 100644
--- a/tools/org.eclipse.persistence.tools.gen/src/org/eclipse/persistence/tools/gen/internal/util/StringUtil.java
+++ b/tools/org.eclipse.persistence.tools.gen/src/org/eclipse/persistence/tools/gen/internal/util/StringUtil.java
@@ -208,6 +208,7 @@
      *         in the parameter string.
      *         Each element is of type <code>String</code>.
      */
+	@SuppressWarnings("null")
 	public static List<String> strToList(String s, char sep, boolean trim)
 	{
 	//ex: if sep is ';' then s should be someting like "Red;Black"
diff --git a/tools/org.eclipse.persistence.tools.mapping/.classpath b/tools/org.eclipse.persistence.tools.mapping/.classpath
index 0551504..52fab40 100644
--- a/tools/org.eclipse.persistence.tools.mapping/.classpath
+++ b/tools/org.eclipse.persistence.tools.mapping/.classpath
@@ -1,11 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
-		<attributes>
-			<attribute name="owner.project.facets" value="java"/>
-		</attributes>
-	</classpathentry>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
 	<classpathentry kind="output" path="build/classes"/>
 </classpath>
diff --git a/tools/org.eclipse.persistence.tools.mapping/.settings/org.eclipse.jdt.core.prefs b/tools/org.eclipse.persistence.tools.mapping/.settings/org.eclipse.jdt.core.prefs
index c537b63..8000cd6 100644
--- a/tools/org.eclipse.persistence.tools.mapping/.settings/org.eclipse.jdt.core.prefs
+++ b/tools/org.eclipse.persistence.tools.mapping/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,11 @@
 eclipse.preferences.version=1
 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
 org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
 org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
 org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
 org.eclipse.jdt.core.compiler.source=1.6
diff --git a/tools/org.eclipse.persistence.tools.mapping/META-INF/MANIFEST.MF b/tools/org.eclipse.persistence.tools.mapping/META-INF/MANIFEST.MF
index deeee3a..2e9844d 100644
--- a/tools/org.eclipse.persistence.tools.mapping/META-INF/MANIFEST.MF
+++ b/tools/org.eclipse.persistence.tools.mapping/META-INF/MANIFEST.MF
@@ -10,4 +10,4 @@
  org.eclipse.persistence.tools.mapping.orm.dom,
  org.eclipse.persistence.tools.mapping.persistence,
  org.eclipse.persistence.tools.mapping.persistence.dom
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: J2SE-1.6
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalBasicMapping.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalBasicMapping.java
index 0fc6352..179c1dd 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalBasicMapping.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalBasicMapping.java
@@ -32,22 +32,8 @@
  * @author John Bracken
  */
 public interface ExternalBasicMapping extends ExternalVersionMapping,
-                                              ExternalMappedMapping {
-
-	/**
-	 * Creates a new generated value for this ID mapping replacing the old one.
-	 */
-	ExternalEntityIDGeneratedValue addGeneratedValue();
-
-	/**
-	 * Creates a new sequence generator for this ID mapping.
-	 */
-	ExternalSequenceGenerator addSequenceGenerator();
-
-	/**
-	 * Creates a new table generator for this ID mapping.
-	 */
-	ExternalTableGenerator addTableGenerator();
+											  ExternalGeneratedMapping,
+											  ExternalMappedMapping   {
 
 	/**
 	 * Returns the enumerated type of this mapping if one exists.
@@ -55,21 +41,6 @@
 	EnumType getEnumeratedType();
 
 	/**
-	 * Returns the generated value for this ID mapping.
-	 */
-	ExternalEntityIDGeneratedValue getGeneratedValue();
-
-	/**
-	 * Returns the sequence generator to be used with this ID mapping.
-	 */
-	ExternalSequenceGenerator getSequenceGenerator();
-
-	/**
-	 * Returns the table generator to be used with this ID mapping.
-	 */
-	ExternalTableGenerator getTableGenerator();
-
-	/**
 	 * Indicates whether this basic mapping's column is a LOB.
 	 */
 	Boolean isLob();
@@ -118,14 +89,4 @@
 	 * Sets whether this mapping returns on update.
 	 */
 	void setReturnOnUpdate(Boolean returnOnUpdate);
-
-	/**
-	 * Creates a new sequence generator to be used with this ID mapping replacing the old one.
-	 */
-	void setSequenceGenerator(String generatorName);
-
-	/**
-	 * Creates new table generator to be used with this ID mapping replacing the old one.
-	 */
-	void setTableGenerator(String generatorName);
 }
\ No newline at end of file
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalGeneratedMapping.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalGeneratedMapping.java
new file mode 100644
index 0000000..ffeea04
--- /dev/null
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalGeneratedMapping.java
@@ -0,0 +1,92 @@
+/*******************************************************************************
+ * Copyright (c) 2006, 2012 Oracle and/or its affiliates. All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
+ * which accompanies this distribution.
+ * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
+ * and the Eclipse Distribution License is available at
+ * http://www.eclipse.org/org/documents/edl-v10.php.
+ *
+ * Contributors:
+ *     Oracle - initial API and implementation
+ *
+ ******************************************************************************/
+package org.eclipse.persistence.tools.mapping.orm;
+
+import javax.persistence.Basic;
+import javax.persistence.Id;
+
+/**
+ * This interface and inherited behavior describes the configurable properties for a mapping
+ * in the ORM xml that has a generated value. 
+ * 
+ * Provisional API: This interface is part of an interim API that is still under development and
+ * expected to change significantly before reaching stability. It is available at this early stage
+ * to solicit feedback from pioneering adopters on the understanding that any code that uses this
+ * API will almost certainly be broken (repeatedly) as the API evolves.<p>
+ *
+ * @see Basic
+ * @see Id
+ * @see http://jcp.org/aboutJava/communityprocess/final/jsr220/index.html,
+ * persistence specificaton
+ *
+ * @version 2.5
+ * @author John Bracken
+ */
+public interface ExternalGeneratedMapping extends ExternalMapping {
+
+	/**
+	 * Creates a new generated value for this ID mapping replacing the old one.
+	 */
+	ExternalEntityIDGeneratedValue addGeneratedValue();
+
+	/**
+	 * Creates a new sequence generator for this ID mapping.
+	 */
+	ExternalSequenceGenerator addSequenceGenerator();
+
+	/**
+	 * Creates a new table generator for this ID mapping.
+	 */
+	ExternalTableGenerator addTableGenerator();
+
+	/**
+	 * Returns the generated value for this ID mapping.
+	 */
+	ExternalEntityIDGeneratedValue getGeneratedValue();
+
+	/**
+	 * Returns the sequence generator to be used with this ID mapping.
+	 */
+	ExternalSequenceGenerator getSequenceGenerator();
+
+	/**
+	 * Returns the table generator to be used with this ID mapping.
+	 */
+	ExternalTableGenerator getTableGenerator();
+
+	/**
+	 * Removes the generated value from the mapping.
+	 */
+	void removeGeneratedValue();
+
+	/**
+	 * Removes the sequence generator from the mapping.
+	 */
+	void removeSequenceGenerator();
+
+	/**
+	 * Removes the table generator from the mapping.
+	 */
+	void removeTableGenerator();
+	
+	/**
+	 * Creates a new sequence generator to be used with this ID mapping replacing the old one.
+	 */
+	void setSequenceGenerator(String generatorName);
+
+	/**
+	 * Creates new table generator to be used with this ID mapping replacing the old one.
+	 */
+	void setTableGenerator(String generatorName);
+}
\ No newline at end of file
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalIDMapping.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalIDMapping.java
index 2cee7a5..0afa40a 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalIDMapping.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalIDMapping.java
@@ -30,50 +30,6 @@
  * @version 2.5
  * @author John Bracken
  */
-public interface ExternalIDMapping extends ExternalVersionMapping {
+public interface ExternalIDMapping extends ExternalVersionMapping, ExternalGeneratedMapping {
 
-	/**
-	 * Creates a new generated value for this ID mapping replacing the old one.
-	 */
-	ExternalEntityIDGeneratedValue addGeneratedValue();
-
-	/**
-	 * Creates a new sequence generator for this ID mapping.
-	 */
-	ExternalSequenceGenerator addSequenceGenerator();
-
-	/**
-	 * Creates a new table generator for this ID mapping.
-	 */
-	ExternalTableGenerator addTableGenerator();
-
-	/**
-	 * Returns the generated value for this ID mapping.
-	 */
-	ExternalEntityIDGeneratedValue getGeneratedValue();
-
-	/**
-	 * Returns the sequence generator to be used with this ID mapping.
-	 */
-	ExternalSequenceGenerator getSequenceGenerator();
-
-	/**
-	 * Returns the table generator to be used with this ID mapping.
-	 */
-	ExternalTableGenerator getTableGenerator();
-
-	/**
-	 * Removes the generated value from the mapping.
-	 */
-	void removeGeneratedValue();
-
-	/**
-	 * Creates a new sequence generator to be used with this ID mapping replacing the old one.
-	 */
-	void setSequenceGenerator(String generatorName);
-
-	/**
-	 * Creates new table generator to be used with this ID mapping replacing the old one.
-	 */
-	void setTableGenerator(String generatorName);
 }
\ No newline at end of file
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalMapping.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalMapping.java
index 651c845..86eb74c 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalMapping.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalMapping.java
@@ -33,13 +33,19 @@
 	 * Returns the attribute type of this mapping.
 	 */
 	String getAttributeType();
-
+	
 	/**
 	 * Returns the name of the mapping.
 	 */
 	String getName();
 
 	/**
+	 * Sets the attribute type of this mapping.
+	 */
+	void setAttributeType(String attributeType);
+
+	
+	/**
 	 * Sets the name of the mapping.
 	 */
 	void setName(String name);
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalORMConfiguration.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalORMConfiguration.java
index ee0d2ac..6c9da81 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalORMConfiguration.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/ExternalORMConfiguration.java
@@ -51,6 +51,13 @@
 	 */
 	void addEntity(int index, String entityClassName);
 
+	
+	/**
+	 * Adds a entity for the given class name.
+	 */
+	ExternalEntity addEntity(String entityClassName);
+	
+	
 	/**
 	 * Adds a mapped super class entity with the given name
 	 */
@@ -180,9 +187,16 @@
 	ExternalEmbeddableEntity getEmbeddableEntity(int index);
 
 	/**
-	 * Returns the entity associated with this ORM configuration identified by the given class name.
+	 * Returns the entity associated with this ORM configuration identified by the given 
+	 * index.
 	 */
 	ExternalEntity getEntity(int index);
+	
+	/**
+	 * Returns the entity associated with this ORM configuration identified by 
+	 * the given class name.
+	 */
+	ExternalEntity getEntity(String className);
 
 	/**
 	 * Returns the mapped superclass for the given class name
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/BasicMapping.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/BasicMapping.java
index 8e257b1..c9baef0 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/BasicMapping.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/BasicMapping.java
@@ -299,6 +299,18 @@
 		generatedValue.removeSelf();
 	}
 
+	@Override
+	public void removeTableGenerator() {
+		TableGenerator generator = buildTableGenerator();
+		generator.removeSelf();		
+	}
+	
+	@Override
+	public void removeSequenceGenerator() {
+		SequenceGenerator generator = buildSequenceGenerator();
+		generator.removeSelf();		
+	}
+	
 	/**
 	 * {@inheritDoc}
 	 */
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/IdMapping.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/IdMapping.java
index efdee8d..5121676 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/IdMapping.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/IdMapping.java
@@ -226,6 +226,18 @@
 		EntityIDGeneratedValue generatedValue = buildGeneratedValue();
 		generatedValue.removeSelf();
 	}
+	
+	@Override
+	public void removeTableGenerator() {
+		TableGenerator generator = buildTableGenerator();
+		generator.removeSelf();		
+	}
+	
+	@Override
+	public void removeSequenceGenerator() {
+		SequenceGenerator generator = buildSequenceGenerator();
+		generator.removeSelf();		
+	}
 
 	/**
 	 * {@inheritDoc}
@@ -239,7 +251,6 @@
 	 * {@inheritDoc}
 	 */
 	@Override
-	@SuppressWarnings("null")
 	public void setColumn(String columnName) {
 
 		AbstractColumn column = getColumn();
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/Mapping.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/Mapping.java
index f6a9f3a..e204c20 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/Mapping.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/Mapping.java
@@ -168,6 +168,15 @@
 	 * {@inheritDoc}
 	 */
 	@Override
+	public void setAttributeType(String attributeType) {
+		setAttribute(ATTRIBUTE_TYPE, attributeType);
+		
+	}
+	
+	/**
+	 * {@inheritDoc}
+	 */
+	@Override
 	public final void setName(String name) {
 		setAttribute(NAME, name);
 	}
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/ORMConfiguration.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/ORMConfiguration.java
index 380e4a0..dd60604 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/ORMConfiguration.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/ORMConfiguration.java
@@ -42,6 +42,7 @@
 import org.eclipse.persistence.tools.mapping.orm.ExternalTenantDiscriminatorColumn;
 import org.eclipse.persistence.tools.mapping.orm.ExternalTypeConverter;
 import org.eclipse.persistence.tools.mapping.orm.ORMDocumentType;
+import org.eclipse.persistence.tools.utility.StringTools;
 import org.eclipse.persistence.tools.utility.Tools;
 import org.eclipse.persistence.tools.utility.iterables.ListIterable;
 import org.eclipse.persistence.tools.utility.iterables.ListListIterable;
@@ -148,6 +149,18 @@
 	 * {@inheritDoc}
 	 */
 	@Override
+	public ExternalEntity addEntity(String entityClassName) {
+		Entity entity = buildEntity(entitiesSize());
+		entity.addSelf();
+		entity.setClassName(entityClassName);
+		
+		return entity;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 */
+	@Override
 	public void addMappedSuperClass(int index, String className) {
 		MappedSuperClassEntity entity = buildMappedSuperclass(index);
 		entity.addSelf();
@@ -608,6 +621,19 @@
 
 		return buildEntity(index);
 	}
+	
+	@Override
+	public ExternalEntity getEntity(String className) {
+		for (ExternalEntity entity : entities()) {
+			if (StringTools.stringsAreEqual(entity.getClassName(), className)) {
+				return entity;
+			}
+		}
+		
+		return null;
+	}
+	
+	
 
 	/**
 	 * {@inheritDoc}
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/ORMRepository.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/ORMRepository.java
index 59716ce..85ed667 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/ORMRepository.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/orm/dom/ORMRepository.java
@@ -13,13 +13,15 @@
  ******************************************************************************/
 package org.eclipse.persistence.tools.mapping.orm.dom;
 
-import com.sun.org.apache.xerces.internal.dom.DocumentImpl;
 import java.io.ByteArrayInputStream;
+
 import javax.xml.parsers.DocumentBuilder;
 import javax.xml.parsers.DocumentBuilderFactory;
+
 import org.eclipse.persistence.tools.mapping.orm.ExternalORMConfiguration;
 import org.eclipse.persistence.tools.mapping.orm.ExternalORMRepository;
 import org.eclipse.persistence.tools.mapping.orm.ORMDocumentType;
+import org.eclipse.persistence.tools.utility.XMLTools;
 import org.w3c.dom.Document;
 import org.xml.sax.InputSource;
 
@@ -52,7 +54,7 @@
 	public ExternalORMConfiguration buildORMConfiguration(ORMDocumentType docType) {
 
 		// Create the external form
-		ORMConfiguration ormConfiguration = new ORMConfiguration(new DocumentImpl());
+		ORMConfiguration ormConfiguration = new ORMConfiguration(XMLTools.newDocument());
 		ormConfiguration.addSelf();
 		ormConfiguration.setDocumentType(docType);
 
diff --git a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/persistence/dom/PersistenceRepository.java b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/persistence/dom/PersistenceRepository.java
index 2e06ea6..d97722a 100644
--- a/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/persistence/dom/PersistenceRepository.java
+++ b/tools/org.eclipse.persistence.tools.mapping/src/org/eclipse/persistence/tools/mapping/persistence/dom/PersistenceRepository.java
Binary files differ
diff --git a/tools/org.eclipse.persistence.tools.utility/src/META-INF/MANIFEST.MF b/tools/org.eclipse.persistence.tools.utility/src/META-INF/MANIFEST.MF
deleted file mode 100644
index 254272e..0000000
--- a/tools/org.eclipse.persistence.tools.utility/src/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,3 +0,0 @@
-Manifest-Version: 1.0
-Class-Path: 
-
diff --git a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/XMLTools.java b/tools/org.eclipse.persistence.tools.utility/src/org/eclipse/persistence/tools/utility/XMLTools.java
similarity index 98%
rename from tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/XMLTools.java
rename to tools/org.eclipse.persistence.tools.utility/src/org/eclipse/persistence/tools/utility/XMLTools.java
index 5bc2ebc..50a8b50 100644
--- a/tools/org.eclipse.persistence.tools.gen.db/src/org/eclipse/persistence/tools/db/model/platformsmodel/XMLTools.java
+++ b/tools/org.eclipse.persistence.tools.utility/src/org/eclipse/persistence/tools/utility/XMLTools.java
@@ -10,7 +10,7 @@
  * Contributors:
  *     Oracle - initial API and implementation from Oracle TopLink
 ******************************************************************************/
-package org.eclipse.persistence.tools.db.model.platformsmodel;
+package org.eclipse.persistence.tools.utility;
 
 import java.io.BufferedInputStream;
 import java.io.BufferedOutputStream;
@@ -38,7 +38,6 @@
 import javax.xml.transform.dom.DOMSource;
 import javax.xml.transform.stream.StreamResult;
 
-import org.eclipse.persistence.tools.utility.StringTools;
 import org.w3c.dom.Document;
 import org.w3c.dom.Node;
 import org.w3c.dom.NodeList;