remove SDO dependency from the SQLModel in DTP.
please refer bugzilla 208455 .
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/META-INF/MANIFEST.MF b/plugins/org.eclipse.datatools.modelbase.sql/META-INF/MANIFEST.MF
index 850b7b4..68dcc58 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.datatools.modelbase.sql/META-INF/MANIFEST.MF
@@ -31,7 +31,6 @@
  org.eclipse.datatools.modelbase.sql.tables.helper,
  org.eclipse.datatools.modelbase.sql.tables.impl,
  org.eclipse.datatools.modelbase.sql.tables.util
-Require-Bundle: org.eclipse.emf.ecore;visibility:=reexport;bundle-version="[2.2.0,3.0.0)",
- org.eclipse.emf.ecore.sdo;visibility:=reexport;bundle-version="[2.2.0,3.0.0)"
+Require-Bundle: org.eclipse.emf.ecore;bundle-version="[2.2.0,3.0.0)";visibility:=reexport
 Eclipse-AutoStart: true
 Bundle-RequiredExecutionEnvironment: J2SE-1.4
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/model/SQLModel.cat b/plugins/org.eclipse.datatools.modelbase.sql/model/SQLModel.cat
index 6c4ed07..f7214a1 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/model/SQLModel.cat
+++ b/plugins/org.eclipse.datatools.modelbase.sql/model/SQLModel.cat
@@ -28,8 +28,7 @@
 	    tool       	"Ecore"

 	    name       	"prefix"

 	    value      	(value Text "SQLModel")))

-    quid       	"3E9B1F8201C1"

-    documentation 	

+    quid       	"3E9B1F8201C1"	

     

     exportControl 	"Public"

     logical_models 	(list unit_reference_list

diff --git a/plugins/org.eclipse.datatools.modelbase.sql/model/sqlmodel.ecore b/plugins/org.eclipse.datatools.modelbase.sql/model/sqlmodel.ecore
index bda0d27..2382a90 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/model/sqlmodel.ecore
+++ b/plugins/org.eclipse.datatools.modelbase.sql/model/sqlmodel.ecore
@@ -1,1005 +1,1156 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="sqlmodel" nsURI="http:///SQLModel.ecore" nsPrefix="SQLModel">
-	<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-		<details key="documentation" value=""/>
-	</eAnnotations>
-	<eSubpackages name="schema" nsURI="http:///org/eclipse/datatools/modelbase/sql/schema.ecore" nsPrefix="SQLSchema">
-		<eClassifiers xsi:type="ecore:EClass" name="IdentitySpecifier" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="generationType" eType="#//schema/GenerateType"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="startValue" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EBigInteger"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="increment" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EBigInteger"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="minimum" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EBigInteger"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="maximum" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EBigInteger"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="cycleOption" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="GenerateType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="DEFAULT_GENERATED"/>
-			<eLiterals name="ALWAYS_GENERATED" value="1"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="TypedElement" abstract="true" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eOperations name="setDataType">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-				<eParameters name="newType" eType="#//datatypes/DataType"/>
-			</eOperations>
-			<eOperations name="getDataType" eType="#//datatypes/DataType">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eOperations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="containedType" eType="#//datatypes/SQLDataType" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="referencedType" eType="#//datatypes/UserDefinedType"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Dependency" eSuperTypes="#//schema/SQLObject">
-			<eStructuralFeatures xsi:type="ecore:EReference" name="targetEnd" lowerBound="1" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EObject"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="dependencyType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Schema" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="triggers" upperBound="-1" eType="#//tables/Trigger" eOpposite="#//tables/Trigger/schema"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="indices" upperBound="-1" eType="#//constraints/Index" eOpposite="#//constraints/Index/Schema"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="tables" upperBound="-1" eType="#//tables/Table" eOpposite="#//tables/Table/schema"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="sequences" upperBound="-1" eType="#//schema/Sequence" eOpposite="#//schema/Sequence/schema"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="database" lowerBound="1" eType="#//schema/Database" eOpposite="#//schema/Database/schemas"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="Catalog" lowerBound="1" eType="#//schema/Catalog" eOpposite="#//schema/Catalog/schemas"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="assertions" upperBound="-1" eType="#//constraints/Assertion" eOpposite="#//constraints/Assertion/schema"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="userDefinedTypes" upperBound="-1" eType="#//datatypes/UserDefinedType" eOpposite="#//datatypes/UserDefinedType/schema"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="charSets" upperBound="-1" eType="#//datatypes/CharacterSet" eOpposite="#//datatypes/CharacterSet/schema"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="routines" upperBound="-1" eType="#//routines/Routine" eOpposite="#//routines/Routine/schema"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="owner" lowerBound="1" eType="#//accesscontrol/AuthorizationIdentifier" eOpposite="#//accesscontrol/AuthorizationIdentifier/ownedSchema"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLObject" abstract="true" eSuperTypes="../../org.eclipse.emf.ecore/model/Ecore.ecore#//ENamedElement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eOperations name="addEAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation">
-				<eParameters name="source" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			</eOperations>
-			<eOperations name="addEAnnotationDetail">
-				<eParameters name="eAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation"/>
-				<eParameters name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-				<eParameters name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			</eOperations>
-			<eOperations name="getEAnnotationDetail" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eParameters name="eAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation"/>
-				<eParameters name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			</eOperations>
-			<eOperations name="setAnnotationDetail">
-				<eParameters name="eAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation"/>
-				<eParameters name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-				<eParameters name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			</eOperations>
-			<eOperations name="removeEAnnotationDetail">
-				<eParameters name="eAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation"/>
-				<eParameters name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			</eOperations>
-			<eOperations name="getEAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation">
-				<eParameters name="source" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			</eOperations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="dependencies" upperBound="-1" eType="#//schema/Dependency" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="label" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="comments" upperBound="-1" eType="#//schema/Comment" eOpposite="#//schema/Comment/SQLObject"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="privileges" upperBound="-1" eType="#//accesscontrol/Privilege" eOpposite="#//accesscontrol/Privilege/object"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Sequence" eSuperTypes="#//schema/TypedElement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="identity" lowerBound="1" eType="#//schema/IdentitySpecifier" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1" eType="#//schema/Schema" eOpposite="#//schema/Schema/sequences"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Database" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eOperations name="getUserDefinedTypes" eType="#//schema/List"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="vendor" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="schemas" upperBound="-1" eType="#//schema/Schema" eOpposite="#//schema/Schema/database"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="events" upperBound="-1" eType="#//schema/Event" eOpposite="#//schema/Event/Database"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="catalogs" upperBound="-1" eType="#//schema/Catalog" eOpposite="#//schema/Catalog/Database"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="authorizationIds" upperBound="-1" eType="#//accesscontrol/AuthorizationIdentifier" eOpposite="#//accesscontrol/AuthorizationIdentifier/Database"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EDataType" name="Date" instanceClassName="java.util.Date"/>
-		<eClassifiers xsi:type="ecore:EDataType" name="List" instanceClassName="java.util.List"/>
-		<eClassifiers xsi:type="ecore:EEnum" name="ReferentialActionType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="NO_ACTION"/>
-			<eLiterals name="RESTRICT" value="1"/>
-			<eLiterals name="CASCADE" value="2"/>
-			<eLiterals name="SET_NULL" value="3"/>
-			<eLiterals name="SET_DEFAULT" value="4"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Event" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="for" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="condition" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="action" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="enabled" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="Database" lowerBound="1" eType="#//schema/Database" eOpposite="#//schema/Database/events"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Comment">
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="SQLObject" lowerBound="1" eType="#//schema/SQLObject" eOpposite="#//schema/SQLObject/comments"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Catalog" eSuperTypes="#//schema/SQLObject">
-			<eStructuralFeatures xsi:type="ecore:EReference" name="Database" lowerBound="1" eType="#//schema/Database" eOpposite="#//schema/Database/catalogs"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="schemas" upperBound="-1" eType="#//schema/Schema" eOpposite="#//schema/Schema/Catalog"/>
-		</eClassifiers>
-	</eSubpackages>
-	<eSubpackages name="constraints" nsURI="http:///org/eclipse/datatools/modelbase/sql/constraints.ecore" nsPrefix="SQLConstraints">
-		<eClassifiers xsi:type="ecore:EClass" name="Assertion" eSuperTypes="#//constraints/Constraint">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="searchCondition" eType="#//expressions/SearchCondition" containment="true" resolveProxies="false"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1" eType="#//schema/Schema" eOpposite="#//schema/Schema/assertions"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="constrainedTables" lowerBound="1" upperBound="-1" eType="#//tables/BaseTable" derived="true"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Constraint" abstract="true" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="deferrable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="initiallyDeferred" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="enforced" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="true"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="TableConstraint" abstract="true" eSuperTypes="#//constraints/Constraint">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="BaseTable" eType="#//tables/BaseTable" transient="true" eOpposite="#//tables/BaseTable/constraints"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="ReferenceConstraint" abstract="true" eSuperTypes="#//constraints/TableConstraint">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="members" lowerBound="1" upperBound="-1" eType="#//tables/Column"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="CheckConstraint" eSuperTypes="#//constraints/TableConstraint">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="searchCondition" eType="#//expressions/SearchCondition" containment="true" resolveProxies="false">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="ForeignKey" eSuperTypes="#//constraints/ReferenceConstraint">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="match" eType="#//constraints/MatchType" defaultValueLiteral="MATCH_SIMPLE"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="onUpdate" eType="#//schema/ReferentialActionType" defaultValueLiteral="NO_ACTION"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="onDelete" eType="#//schema/ReferentialActionType" defaultValueLiteral="NO_ACTION"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="uniqueConstraint" eType="#//constraints/UniqueConstraint" eOpposite="#//constraints/UniqueConstraint/ForeignKey"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="referencedMembers" lowerBound="1" upperBound="-1" eType="#//tables/Column"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="uniqueIndex" eType="#//constraints/Index" eOpposite="#//constraints/Index/ForeignKey"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="referencedTable" eType="#//tables/BaseTable" eOpposite="#//tables/BaseTable/referencingForeignKeys"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="UniqueConstraint" eSuperTypes="#//constraints/ReferenceConstraint">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="ForeignKey" upperBound="-1" eType="#//constraints/ForeignKey" eOpposite="#//constraints/ForeignKey/uniqueConstraint"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="PrimaryKey" eSuperTypes="#//constraints/UniqueConstraint">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="MatchType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="MATCH_SIMPLE"/>
-			<eLiterals name="MATCH_FULL" value="1"/>
-			<eLiterals name="MATCH_PARTIAL" value="2"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Index" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="Schema" lowerBound="1" eType="#//schema/Schema" eOpposite="#//schema/Schema/indices"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="clustered" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="fillFactor" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="0"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="unique" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="systemGenerated" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="members" lowerBound="1" upperBound="-1" eType="#//constraints/IndexMember" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="table" lowerBound="1" eType="#//tables/Table" eOpposite="#//tables/Table/index"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="ForeignKey" upperBound="-1" eType="#//constraints/ForeignKey" eOpposite="#//constraints/ForeignKey/uniqueIndex"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="includedMembers" upperBound="-1" eType="#//constraints/IndexMember" containment="true"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="IndexMember" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="incrementType" eType="#//constraints/IncrementType"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="column" lowerBound="1" eType="#//tables/Column"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="IncrementType">
-			<eLiterals name="ASC"/>
-			<eLiterals name="DESC" value="1"/>
-		</eClassifiers>
-	</eSubpackages>
-	<eSubpackages name="datatypes" nsURI="http:///org/eclipse/datatools/modelbase/sql/datatypes.ecore" nsPrefix="SQLDataTypes">
-		<eClassifiers xsi:type="ecore:EClass" name="UserDefinedType" abstract="true" eSuperTypes="#//datatypes/DataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1" eType="#//schema/Schema" eOpposite="#//schema/Schema/userDefinedTypes"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="ordering" eType="#//datatypes/UserDefinedTypeOrdering" containment="true"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="DataType" abstract="true" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eOperations name="setContainer">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-				<eParameters name="newContainer" eType="#//schema/TypedElement"/>
-			</eOperations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="PredefinedDataType" abstract="true" eSuperTypes="#//datatypes/SQLDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="primitiveType" eType="#//datatypes/PrimitiveType"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="CollectionDataType" abstract="true" eSuperTypes="#//datatypes/ConstructedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="element" lowerBound="1" upperBound="-1" eType="#//datatypes/DataType"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="NumericalDataType" abstract="true" eSuperTypes="#//datatypes/PredefinedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="precision" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="CharacterStringDataType" eSuperTypes="#//datatypes/PredefinedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="length" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="1"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="coercibility" eType="#//datatypes/CoercibilityType"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="fixedLength" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" changeable="false"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="collationName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="characterSet" lowerBound="1" eType="#//datatypes/CharacterSet"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="RowDataType" eSuperTypes="#//datatypes/ConstructedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="fields" lowerBound="1" upperBound="-1" eType="#//datatypes/Field" containment="true"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="ArrayDataType" abstract="true" eSuperTypes="#//datatypes/CollectionDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="maxCardinality" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="MultisetDataType" abstract="true" eSuperTypes="#//datatypes/CollectionDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="BooleanDataType" eSuperTypes="#//datatypes/PredefinedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="IntervalDataType" eSuperTypes="#//datatypes/PredefinedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="leadingQualifier" eType="#//datatypes/IntervalQualifierType"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="trailingQualifier" eType="#//datatypes/IntervalQualifierType"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="leadingFieldPrecision" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="trailingFieldPrecision" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="fractionalSecondsPrecision" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="BinaryStringDataType" eSuperTypes="#//datatypes/PredefinedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eOperations name="equals" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="length" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="CharacterSet" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="repertoire" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultCollation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="encoding" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1" eType="#//schema/Schema" eOpposite="#//schema/Schema/charSets"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="CoercibilityType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="IMPLICIT"/>
-			<eLiterals name="EXPLICIT" value="1"/>
-			<eLiterals name="COERCIBILE" value="2"/>
-			<eLiterals name="NO_COLLATION" value="3"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="TimeDataType" eSuperTypes="#//datatypes/PredefinedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="fractionalSecondsPrecision" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="timeZone" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="IntervalQualifierType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="YEAR"/>
-			<eLiterals name="MONTH" value="1"/>
-			<eLiterals name="DAY" value="2"/>
-			<eLiterals name="HOUR" value="3"/>
-			<eLiterals name="MINUTE" value="4"/>
-			<eLiterals name="SECOND" value="5"/>
-			<eLiterals name="FRACTION" value="6"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="DistinctUserDefinedType" eSuperTypes="#//datatypes/UserDefinedType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="predefinedRepresentation" lowerBound="1" eType="#//datatypes/PredefinedDataType" containment="true"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="StructuredUserDefinedType" eSuperTypes="#//datatypes/UserDefinedType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="instantiable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="True"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="final" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="super" eType="#//datatypes/StructuredUserDefinedType" eOpposite="#//datatypes/StructuredUserDefinedType/sub"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="sub" upperBound="-1" eType="#//datatypes/StructuredUserDefinedType" eOpposite="#//datatypes/StructuredUserDefinedType/super"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="attributes" upperBound="-1" eType="#//datatypes/AttributeDefinition" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="methods" upperBound="-1" eType="#//routines/Method" containment="true"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="OrderingType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="EQUALS"/>
-			<eLiterals name="FULL" value="1"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="OrderingCategoryType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="RELATIVE"/>
-			<eLiterals name="MAP" value="1"/>
-			<eLiterals name="STATE" value="2"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="AttributeDefinition" eSuperTypes="#//schema/TypedElement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeCheck" eType="#//schema/ReferentialActionType"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeChecked" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="FixedPrecisionDataType" eSuperTypes="#//datatypes/ExactNumericDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="PrimitiveType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="CHARACTER"/>
-			<eLiterals name="CHARACTER_VARYING" value="1"/>
-			<eLiterals name="CHARACTER_LARGE_OBJECT" value="2"/>
-			<eLiterals name="NATIONAL_CHARACTER" value="3"/>
-			<eLiterals name="NATIONAL_CHARACTER_VARYING" value="4"/>
-			<eLiterals name="NATIONAL_CHARACTER_LARGE_OBJECT" value="5"/>
-			<eLiterals name="BINARY" value="6"/>
-			<eLiterals name="BINARY_VARYING" value="7"/>
-			<eLiterals name="BINARY_LARGE_OBJECT" value="8"/>
-			<eLiterals name="NUMERIC" value="9"/>
-			<eLiterals name="DECIMAL" value="10"/>
-			<eLiterals name="SMALLINT" value="11"/>
-			<eLiterals name="INTEGER" value="12"/>
-			<eLiterals name="BIGINT" value="13"/>
-			<eLiterals name="FLOAT" value="14"/>
-			<eLiterals name="REAL" value="15"/>
-			<eLiterals name="DOUBLE_PRECISION" value="16"/>
-			<eLiterals name="BOOLEAN" value="17"/>
-			<eLiterals name="DATE" value="18"/>
-			<eLiterals name="TIME" value="19"/>
-			<eLiterals name="TIMESTAMP" value="20"/>
-			<eLiterals name="INTERVAL" value="21"/>
-			<eLiterals name="DATALINK" value="22"/>
-			<eLiterals name="XML_TYPE" value="23"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Domain" eSuperTypes="#//datatypes/DistinctUserDefinedType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="constraint" upperBound="-1" eType="#//constraints/CheckConstraint" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Field" eSuperTypes="#//schema/TypedElement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeCheck" eType="#//schema/ReferentialActionType"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeChecked" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="ReferenceDataType" abstract="true" eSuperTypes="#//datatypes/ConstructedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="scopeTable" lowerBound="1" eType="#//tables/Table"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="referencedType" lowerBound="1" eType="#//datatypes/StructuredUserDefinedType"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="ConstructedDataType" abstract="true" eSuperTypes="#//datatypes/SQLDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLDataType" abstract="true" eSuperTypes="#//datatypes/DataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="DataLinkDataType" eSuperTypes="#//datatypes/PredefinedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="length" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="linkControl" eType="#//datatypes/LinkControlOption"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="integrityControl" eType="#//datatypes/IntegrityControlOption"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="readPermission" eType="#//datatypes/ReadPermissionOption"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="writePermission" eType="#//datatypes/WritePermissionOption"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="recovery" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="unlink" eType="#//datatypes/UnlinkOption"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="LinkControlOption">
-			<eLiterals name="FILE_LINK_CONTROL"/>
-			<eLiterals name="NO_FILE_LINK_CONTROL" value="1"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="IntegrityControlOption">
-			<eLiterals name="ALL"/>
-			<eLiterals name="SELECTIVE" value="1"/>
-			<eLiterals name="NONE" value="2"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="ReadPermissionOption">
-			<eLiterals name="FS"/>
-			<eLiterals name="DB" value="1"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="WritePermissionOption">
-			<eLiterals name="FS"/>
-			<eLiterals name="ADMIN" value="1"/>
-			<eLiterals name="BLOCKED" value="2"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="UnlinkOption">
-			<eLiterals name="RESTORE"/>
-			<eLiterals name="DELETE" value="1"/>
-			<eLiterals name="NONE" value="2"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="UserDefinedTypeOrdering" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="orderingForm" eType="#//datatypes/OrderingType"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="orderingCategory" eType="#//datatypes/OrderingCategoryType"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="orderingRoutine" lowerBound="1" eType="#//routines/Routine"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="DateDataType" eSuperTypes="#//datatypes/PredefinedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="ExactNumericDataType" abstract="true" eSuperTypes="#//datatypes/NumericalDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="scale" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="ApproximateNumericDataType" eSuperTypes="#//datatypes/NumericalDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="IntegerDataType" eSuperTypes="#//datatypes/ExactNumericDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="XMLDataType" eSuperTypes="#//datatypes/PredefinedDataType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-	</eSubpackages>
-	<eSubpackages name="expressions" nsURI="http:///org/eclipse/datatools/modelbase/sql/expressions.ecore" nsPrefix="SQLExpressions">
-		<eClassifiers xsi:type="ecore:EClass" name="QueryExpression" abstract="true" interface="true">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eOperations name="getSQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eOperations name="setSQL">
-				<eParameters name="sqlText" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			</eOperations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="ValueExpression" abstract="true" interface="true">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eOperations name="getSQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eOperations name="setSQL">
-				<eParameters name="sqlText" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			</eOperations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SearchCondition" abstract="true" interface="true">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eOperations name="getSQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eOperations name="setSQL">
-				<eParameters name="sqlText" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			</eOperations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="QueryExpressionDefault" eSuperTypes="#//schema/SQLObject #//expressions/QueryExpression">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="SQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SearchConditionDefault" eSuperTypes="#//schema/SQLObject #//expressions/SearchCondition">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="SQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="ValueExpressionDefault" eSuperTypes="#//schema/SQLObject #//expressions/ValueExpression">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="SQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-		</eClassifiers>
-	</eSubpackages>
-	<eSubpackages name="routines" nsURI="http:///org/eclipse/datatools/modelbase/sql/routines.ecore" nsPrefix="SQLRoutines">
-		<eClassifiers xsi:type="ecore:EClass" name="Routine" abstract="true" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="specificName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="language" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterStyle" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="deterministic" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="sqlDataAccess" eType="#//routines/DataAccess">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="creationTS" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="lastAlteredTS" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="authorizationID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="security" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="externalName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1" eType="#//routines/Parameter" containment="true" eOpposite="#//routines/Parameter/routine"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="source" eType="#//routines/Source" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1" eType="#//schema/Schema" eOpposite="#//schema/Schema/routines"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Source" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="body" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Parameter" eSuperTypes="#//schema/TypedElement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="mode" eType="#//routines/ParameterMode">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="locator" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="routine" lowerBound="1" eType="#//routines/Routine" transient="true" eOpposite="#//routines/Routine/parameters"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="stringTypeOption" eType="#//datatypes/CharacterStringDataType" containment="true"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Procedure" eSuperTypes="#//routines/Routine">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="maxResultSets" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="oldSavePoint" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="resultSet" upperBound="-1" eType="#//routines/RoutineResultTable" containment="true"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Function" eSuperTypes="#//routines/Routine">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="nullCall" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="transformGroup" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="typePreserving" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="mutator" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="returnTable" eType="#//routines/RoutineResultTable" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="returnScalar" eType="#//routines/Parameter" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="returnCast" eType="#//routines/Parameter" containment="true"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="DataAccess">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="NO_SQL"/>
-			<eLiterals name="CONTAINS_SQL" value="1"/>
-			<eLiterals name="READS_SQL_DATA" value="2"/>
-			<eLiterals name="MODIFIES_SQL_DATA" value="3"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="ParameterMode">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="IN"/>
-			<eLiterals name="OUT" value="1"/>
-			<eLiterals name="INOUT" value="2"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="RoutineResultTable" eSuperTypes="#//tables/Table">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Method" eSuperTypes="#//routines/Function">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="overriding" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="constructor" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="UserDefinedFunction" eSuperTypes="#//routines/Function">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="BuiltInFunction" eSuperTypes="#//routines/Function">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-	</eSubpackages>
-	<eSubpackages name="statements" nsURI="http:///org/eclipse/datatools/modelbase/sql/statements.ecore" nsPrefix="SQLStatements">
-		<eClassifiers xsi:type="ecore:EClass" name="SQLStatement" abstract="true" interface="true">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eOperations name="getSQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eOperations name="setSQL">
-				<eParameters name="sqlText" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			</eOperations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLDataStatement" abstract="true" interface="true" eSuperTypes="#//statements/SQLStatement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLSchemaStatement" abstract="true" interface="true" eSuperTypes="#//statements/SQLStatement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLControlStatement" abstract="true" interface="true" eSuperTypes="#//statements/SQLStatement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLDataChangeStatement" abstract="true" interface="true" eSuperTypes="#//statements/SQLDataStatement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLStatementDefault" eSuperTypes="#//schema/SQLObject #//statements/SQLStatement">
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="SQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLConnectionStatement" abstract="true" interface="true" eSuperTypes="#//statements/SQLStatement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLDiagnosticsStatement" abstract="true" interface="true" eSuperTypes="#//statements/SQLStatement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLDynamicStatement" abstract="true" interface="true" eSuperTypes="#//statements/SQLStatement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLSessionStatement" abstract="true" interface="true" eSuperTypes="#//statements/SQLStatement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="SQLTransactionStatement" abstract="true" interface="true" eSuperTypes="#//statements/SQLStatement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-	</eSubpackages>
-	<eSubpackages name="tables" nsURI="http:///org/eclipse/datatools/modelbase/sql/tables.ecore" nsPrefix="SQLTables">
-		<eClassifiers xsi:type="ecore:EClass" name="ViewTable" eSuperTypes="#//tables/DerivedTable">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="checkType" eType="#//tables/CheckType"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="TemporaryTable" eSuperTypes="#//tables/BaseTable">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="local" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="deleteOnCommit" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Table" abstract="true" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="columns" lowerBound="1" upperBound="-1" eType="#//tables/Column" containment="true" eOpposite="#//tables/Column/table"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="supertable" eType="#//tables/Table" eOpposite="#//tables/Table/subtables"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="subtables" upperBound="-1" eType="#//tables/Table" eOpposite="#//tables/Table/supertable"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1" eType="#//schema/Schema" eOpposite="#//schema/Schema/tables"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="udt" eType="#//datatypes/StructuredUserDefinedType"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="triggers" upperBound="-1" eType="#//tables/Trigger" eOpposite="#//tables/Trigger/subjectTable"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="index" upperBound="-1" eType="#//constraints/Index" eOpposite="#//constraints/Index/table"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="selfRefColumnGeneration" eType="#//tables/ReferenceType"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="insertable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" changeable="false" volatile="true" transient="true" derived="true"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="updatable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" changeable="false" volatile="true" transient="true" derived="true"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="PersistentTable" eSuperTypes="#//tables/BaseTable">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="DerivedTable" abstract="true" eSuperTypes="#//tables/Table">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="queryExpression" eType="#//expressions/QueryExpression" containment="true" resolveProxies="false"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="BaseTable" abstract="true" eSuperTypes="#//tables/Table">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eOperations name="getUniqueConstraints" eType="#//schema/List"/>
-			<eOperations name="getForeignKeys" eType="#//schema/List"/>
-			<eOperations name="getPrimaryKey" eType="#//constraints/PrimaryKey"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="constraints" upperBound="-1" eType="#//constraints/TableConstraint" containment="true" eOpposite="#//constraints/TableConstraint/BaseTable"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="referencingForeignKeys" upperBound="-1" eType="#//constraints/ForeignKey" eOpposite="#//constraints/ForeignKey/referencedTable"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="CheckType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="CASCADED"/>
-			<eLiterals name="LOCAL" value="1"/>
-			<eLiterals name="NONE" value="2"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="ReferenceType">
-			<eLiterals name="SYSTEM_GENERATED"/>
-			<eLiterals name="USER_GENERATED" value="1"/>
-			<eLiterals name="DERIVED_SELF_REF" value="2"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Column" eSuperTypes="#//schema/TypedElement">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eOperations name="isPartOfForeignKey" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eOperations name="isPartOfUniqueConstraint" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eOperations name="isPartOfPrimaryKey" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="table" lowerBound="1" eType="#//tables/Table" transient="true" eOpposite="#//tables/Table/columns"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="identitySpecifier" eType="#//schema/IdentitySpecifier" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="generateExpression" eType="#//expressions/ValueExpression" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="implementationDependent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="False"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="nullable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="True"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeCheck" eType="#//schema/ReferentialActionType" defaultValueLiteral="NO_ACTION"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeChecked" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Trigger" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1" eType="#//schema/Schema" eOpposite="#//schema/Schema/triggers"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="subjectTable" lowerBound="1" eType="#//tables/Table" eOpposite="#//tables/Table/triggers"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="actionStatement" lowerBound="1" upperBound="-1" eType="#//statements/SQLStatement" containment="true"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="triggerColumn" upperBound="-1" eType="#//tables/Column"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="actionGranularity" eType="#//tables/ActionGranularityType" defaultValueLiteral="STATEMENT"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="when" eType="#//expressions/SearchCondition" containment="true" resolveProxies="false"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="timeStamp" eType="#//schema/Date" changeable="false">
-				<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-					<details key="documentation" value=""/>
-				</eAnnotations>
-			</eStructuralFeatures>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="actionTime" eType="#//tables/ActionTimeType"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="updateType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="insertType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="deleteType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="oldRow" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="newRow" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="oldTable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="newTable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="ActionTimeType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="AFTER"/>
-			<eLiterals name="BEFORE" value="1"/>
-			<eLiterals name="INSTEADOF" value="2"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EEnum" name="ActionGranularityType">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eLiterals name="STATEMENT"/>
-			<eLiterals name="ROW" value="1"/>
-		</eClassifiers>
-	</eSubpackages>
-	<eSubpackages name="accesscontrol" nsURI="http:///org/eclipse/datatools/modelbase/sql/accesscontrol.ecore" nsPrefix="SQLAccessControl">
-		<eClassifiers xsi:type="ecore:EClass" name="AuthorizationIdentifier" abstract="true" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="ownedSchema" upperBound="-1" eType="#//schema/Schema" eOpposite="#//schema/Schema/owner"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="Database" lowerBound="1" eType="#//schema/Database" eOpposite="#//schema/Database/authorizationIds"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="receivedRoleAuthorization" upperBound="-1" eType="#//accesscontrol/RoleAuthorization" eOpposite="#//accesscontrol/RoleAuthorization/grantee"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="grantedRoleAuthorization" upperBound="-1" eType="#//accesscontrol/RoleAuthorization" eOpposite="#//accesscontrol/RoleAuthorization/grantor"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="grantedPrivilege" upperBound="-1" eType="#//accesscontrol/Privilege" eOpposite="#//accesscontrol/Privilege/grantor"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="receivedPrivilege" upperBound="-1" eType="#//accesscontrol/Privilege" containment="true" eOpposite="#//accesscontrol/Privilege/grantee"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Privilege" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="grantable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="action" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="withHierarchy" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="grantor" lowerBound="1" eType="#//accesscontrol/AuthorizationIdentifier" eOpposite="#//accesscontrol/AuthorizationIdentifier/grantedPrivilege"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="grantee" eType="#//accesscontrol/AuthorizationIdentifier" transient="true" eOpposite="#//accesscontrol/AuthorizationIdentifier/receivedPrivilege"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="actionObjects" upperBound="-1" eType="#//schema/SQLObject"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="object" lowerBound="1" eType="#//schema/SQLObject" eOpposite="#//schema/SQLObject/privileges"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Group" eSuperTypes="#//accesscontrol/AuthorizationIdentifier">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="user" upperBound="-1" eType="#//accesscontrol/User" eOpposite="#//accesscontrol/User/group"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="User" eSuperTypes="#//accesscontrol/AuthorizationIdentifier">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="group" upperBound="-1" eType="#//accesscontrol/Group" eOpposite="#//accesscontrol/Group/user"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="Role" eSuperTypes="#//accesscontrol/AuthorizationIdentifier">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="roleAuthorization" lowerBound="1" upperBound="-1" eType="#//accesscontrol/RoleAuthorization" eOpposite="#//accesscontrol/RoleAuthorization/role"/>
-		</eClassifiers>
-		<eClassifiers xsi:type="ecore:EClass" name="RoleAuthorization" eSuperTypes="#//schema/SQLObject">
-			<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-				<details key="documentation" value=""/>
-			</eAnnotations>
-			<eStructuralFeatures xsi:type="ecore:EAttribute" name="grantable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="role" lowerBound="1" eType="#//accesscontrol/Role" eOpposite="#//accesscontrol/Role/roleAuthorization"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="grantee" lowerBound="1" eType="#//accesscontrol/AuthorizationIdentifier" eOpposite="#//accesscontrol/AuthorizationIdentifier/receivedRoleAuthorization"/>
-			<eStructuralFeatures xsi:type="ecore:EReference" name="grantor" lowerBound="1" eType="#//accesscontrol/AuthorizationIdentifier" eOpposite="#//accesscontrol/AuthorizationIdentifier/grantedRoleAuthorization"/>
-		</eClassifiers>
-	</eSubpackages>
+<ecore:EPackage xmi:version="2.0"
+    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="sqlmodel"
+    nsURI="http:///SQLModel.ecore" nsPrefix="SQLModel">
+  <eSubpackages name="schema" nsURI="http:///org/eclipse/datatools/modelbase/sql/schema.ecore"
+      nsPrefix="SQLSchema">
+    <eClassifiers xsi:type="ecore:EClass" name="IdentitySpecifier" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.14.4 Identity columns"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="generationType" eType="#//schema/GenerateType"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="startValue" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EBigInteger"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="increment" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EBigInteger"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="minimum" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EBigInteger"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="maximum" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EBigInteger"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="cycleOption" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="GenerateType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.14.4 Identity columns&#xD;&#xA;"/>
+      </eAnnotations>
+      <eLiterals name="DEFAULT_GENERATED"/>
+      <eLiterals name="ALWAYS_GENERATED" value="1"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="TypedElement" abstract="true" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 "/>
+      </eAnnotations>
+      <eOperations name="setDataType">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="Set the type for this TypedElement"/>
+        </eAnnotations>
+        <eParameters name="newType" eType="#//datatypes/DataType"/>
+      </eOperations>
+      <eOperations name="getDataType" eType="#//datatypes/DataType">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="Get the type for this TypedElement"/>
+        </eAnnotations>
+      </eOperations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="containedType" eType="#//datatypes/SQLDataType"
+          containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="referencedType" eType="#//datatypes/UserDefinedType"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Dependency" eSuperTypes="#//schema/SQLObject">
+      <eStructuralFeatures xsi:type="ecore:EReference" name="targetEnd" lowerBound="1"
+          eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EObject"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="dependencyType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Schema" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.20 SQL-schemas&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="triggers" upperBound="-1"
+          eType="#//tables/Trigger" eOpposite="#//tables/Trigger/schema"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="indices" upperBound="-1"
+          eType="#//constraints/Index" eOpposite="#//constraints/Index/Schema"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="tables" upperBound="-1"
+          eType="#//tables/Table" eOpposite="#//tables/Table/schema"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="sequences" upperBound="-1"
+          eType="#//schema/Sequence" eOpposite="#//schema/Sequence/schema"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="database" lowerBound="1"
+          eType="#//schema/Database" eOpposite="#//schema/Database/schemas"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="Catalog" lowerBound="1"
+          eType="#//schema/Catalog" eOpposite="#//schema/Catalog/schemas"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="assertions" upperBound="-1"
+          eType="#//constraints/Assertion" eOpposite="#//constraints/Assertion/schema"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="userDefinedTypes" upperBound="-1"
+          eType="#//datatypes/UserDefinedType" eOpposite="#//datatypes/UserDefinedType/schema"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="charSets" upperBound="-1"
+          eType="#//datatypes/CharacterSet" eOpposite="#//datatypes/CharacterSet/schema"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="routines" upperBound="-1"
+          eType="#//routines/Routine" eOpposite="#//routines/Routine/schema"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="owner" lowerBound="1"
+          eType="#//accesscontrol/AuthorizationIdentifier" eOpposite="#//accesscontrol/AuthorizationIdentifier/ownedSchema"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLObject" abstract="true" eSuperTypes="../../org.eclipse.emf.ecore/model/Ecore.ecore#//ENamedElement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="The base object to be used for any Relation Database concept, representing the placeholder for the name and alias.  This object will extend ENamedElement in the generated code.  The string attribute name will be inherited&#xD;&#xA;from ENamedElement.&#xD;&#xA;&#xD;&#xA;Note: In the RDB sense, only table and view objects can be represented by aliases, but DB2 defines also database and network aliases, and even for nicknames that refer to data tables or views located on federated systems."/>
+      </eAnnotations>
+      <eOperations name="addEAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation">
+        <eParameters name="source" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      </eOperations>
+      <eOperations name="addEAnnotationDetail">
+        <eParameters name="eAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation"/>
+        <eParameters name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+        <eParameters name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      </eOperations>
+      <eOperations name="getEAnnotationDetail" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eParameters name="eAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation"/>
+        <eParameters name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      </eOperations>
+      <eOperations name="setAnnotationDetail">
+        <eParameters name="eAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation"/>
+        <eParameters name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+        <eParameters name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      </eOperations>
+      <eOperations name="removeEAnnotationDetail">
+        <eParameters name="eAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation"/>
+        <eParameters name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      </eOperations>
+      <eOperations name="getEAnnotation" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation">
+        <eParameters name="source" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      </eOperations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="dependencies" upperBound="-1"
+          eType="#//schema/Dependency" containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="comments" upperBound="-1"
+          eType="#//schema/Comment" eOpposite="#//schema/Comment/SQLObject"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="privileges" upperBound="-1"
+          eType="#//accesscontrol/Privilege" eOpposite="#//accesscontrol/Privilege/object"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Sequence" eSuperTypes="#//schema/TypedElement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.21 Sequence Generators"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="identity" lowerBound="1"
+          eType="#//schema/IdentitySpecifier" containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1"
+          eType="#//schema/Schema" eOpposite="#//schema/Schema/sequences"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Database" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 "/>
+      </eAnnotations>
+      <eOperations name="getUserDefinedTypes" eType="#//schema/List"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="vendor" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="schemas" upperBound="-1"
+          eType="#//schema/Schema" eOpposite="#//schema/Schema/database"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="events" upperBound="-1"
+          eType="#//schema/Event" eOpposite="#//schema/Event/Database"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="catalogs" upperBound="-1"
+          eType="#//schema/Catalog" eOpposite="#//schema/Catalog/Database"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="authorizationIds" upperBound="-1"
+          eType="#//accesscontrol/AuthorizationIdentifier" eOpposite="#//accesscontrol/AuthorizationIdentifier/Database"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EDataType" name="Date" instanceClassName="java.util.Date"/>
+    <eClassifiers xsi:type="ecore:EDataType" name="List" instanceClassName="java.util.List"/>
+    <eClassifiers xsi:type="ecore:EEnum" name="ReferentialActionType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 "/>
+      </eAnnotations>
+      <eLiterals name="NO_ACTION"/>
+      <eLiterals name="RESTRICT" value="1"/>
+      <eLiterals name="CASCADE" value="2"/>
+      <eLiterals name="SET_NULL" value="3"/>
+      <eLiterals name="SET_DEFAULT" value="4"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Event" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 "/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="for" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="the type of object on which the event applies"/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="condition" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="the condition to be satisfied inorder to activate the event"/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="action" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="the action that the event performs after being activated"/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="enabled" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="event state"/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="Database" lowerBound="1"
+          eType="#//schema/Database" eOpposite="#//schema/Database/events"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Comment">
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="SQLObject" lowerBound="1"
+          eType="#//schema/SQLObject" eOpposite="#//schema/SQLObject/comments"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Catalog" eSuperTypes="#//schema/SQLObject">
+      <eStructuralFeatures xsi:type="ecore:EReference" name="Database" lowerBound="1"
+          eType="#//schema/Database" eOpposite="#//schema/Database/catalogs"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="schemas" upperBound="-1"
+          eType="#//schema/Schema" eOpposite="#//schema/Schema/Catalog"/>
+    </eClassifiers>
+  </eSubpackages>
+  <eSubpackages name="constraints" nsURI="http:///org/eclipse/datatools/modelbase/sql/constraints.ecore"
+      nsPrefix="SQLConstraints">
+    <eClassifiers xsi:type="ecore:EClass" name="Assertion" eSuperTypes="#//constraints/Constraint">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.17.4 Assertions,&#xD;&#xA;5WD-02-Foundation-2002-12 11.37 &lt;assertion definition>&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="searchCondition" eType="#//expressions/SearchCondition"
+          containment="true" resolveProxies="false"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1"
+          eType="#//schema/Schema" eOpposite="#//schema/Schema/assertions"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="constrainedTables" lowerBound="1"
+          upperBound="-1" eType="#//tables/BaseTable" derived="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Constraint" abstract="true" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.17 Integrity constraints&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="deferrable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="If True allows you to specify when the DBMS should check the constraint for violation (statement end or transaction end).  If False it will always be after statement end.&#xD;&#xA;&#xD;&#xA;Could also be named deferralMode with values DEFERRABLE and NOT DEFERRABLE."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="initiallyDeferred" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+          defaultValueLiteral="false">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="If True isDeferrable must be True and constraint check time will be DEFERRED.  If False constraint check time will be IMMEDIATE.&#xD;&#xA;&#xD;&#xA;Could also be named (initial)ConstraintCheckTime with values INITIALLY DEFERRED and INITIALLY IMMEDIATE.  Default value would be INITIALLY IMMEDIATE.&#xD;&#xA;"/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="enforced" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+          defaultValueLiteral="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="TableConstraint" abstract="true" eSuperTypes="#//constraints/Constraint">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.17.2 Table constraints&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="BaseTable" eType="#//tables/BaseTable"
+          transient="true" eOpposite="#//tables/BaseTable/constraints"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="ReferenceConstraint" abstract="true"
+        eSuperTypes="#//constraints/TableConstraint">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.17.2 Table constraints"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="members" lowerBound="1"
+          upperBound="-1" eType="#//tables/Column"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="CheckConstraint" eSuperTypes="#//constraints/TableConstraint">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.17.2 Table constraints&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="searchCondition" eType="#//expressions/SearchCondition"
+          containment="true" resolveProxies="false">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="Section 4.17.2&#xD;&#xA;A check constraint is satisfied if and only if the specified &lt;search condition> is not False for any row of a table."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="ForeignKey" eSuperTypes="#//constraints/ReferenceConstraint">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.17 Integrity constraints, Reference, 5WD-02-Foundation-2002-12 11.8 &lt;referencial constraint definition>&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="match" eType="#//constraints/MatchType"
+          defaultValueLiteral="MATCH_SIMPLE"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="onUpdate" eType="#//schema/ReferentialActionType"
+          defaultValueLiteral="NO_ACTION"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="onDelete" eType="#//schema/ReferentialActionType"
+          defaultValueLiteral="NO_ACTION"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="uniqueConstraint" eType="#//constraints/UniqueConstraint"
+          eOpposite="#//constraints/UniqueConstraint/ForeignKey"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="referencedMembers" lowerBound="1"
+          upperBound="-1" eType="#//tables/Column"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="uniqueIndex" eType="#//constraints/Index"
+          eOpposite="#//constraints/Index/ForeignKey"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="referencedTable" eType="#//tables/BaseTable"
+          eOpposite="#//tables/BaseTable/referencingForeignKeys"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="UniqueConstraint" eSuperTypes="#//constraints/ReferenceConstraint">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.17.2 Table constraints, 5WD-02-Foundation-2002-12 11.7 &lt;unique contraint definition>&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="ForeignKey" upperBound="-1"
+          eType="#//constraints/ForeignKey" eOpposite="#//constraints/ForeignKey/uniqueConstraint"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="PrimaryKey" eSuperTypes="#//constraints/UniqueConstraint">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.17 Integrity constraints, Reference, 5WD-02-Foundation-2002-12 11.7 &lt;unique contraint definition>"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="MatchType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="See KeyRelationship description."/>
+      </eAnnotations>
+      <eLiterals name="MATCH_SIMPLE"/>
+      <eLiterals name="MATCH_FULL" value="1"/>
+      <eLiterals name="MATCH_PARTIAL" value="2"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Index" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 "/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="Schema" lowerBound="1"
+          eType="#//schema/Schema" eOpposite="#//schema/Schema/indices"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="clustered" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+          defaultValueLiteral="false"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="fillFactor" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"
+          defaultValueLiteral="0"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="unique" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+          defaultValueLiteral="false"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="systemGenerated" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="members" lowerBound="1"
+          upperBound="-1" eType="#//constraints/IndexMember" containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="table" lowerBound="1"
+          eType="#//tables/Table" eOpposite="#//tables/Table/index"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="ForeignKey" upperBound="-1"
+          eType="#//constraints/ForeignKey" eOpposite="#//constraints/ForeignKey/uniqueIndex"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="includedMembers" upperBound="-1"
+          eType="#//constraints/IndexMember" containment="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="IndexMember" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="IndexMember is an EObject.  It does not have a name or associated SQL descriptor so it is not an SQLObject.  This is the way we have chosen to model Index columns because EMF does not support association classes."/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="incrementType" eType="#//constraints/IncrementType"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="column" lowerBound="1"
+          eType="#//tables/Column"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="IncrementType">
+      <eLiterals name="ASC"/>
+      <eLiterals name="DESC" value="1"/>
+    </eClassifiers>
+  </eSubpackages>
+  <eSubpackages name="datatypes" nsURI="http:///org/eclipse/datatools/modelbase/sql/datatypes.ecore"
+      nsPrefix="SQLDataTypes">
+    <eClassifiers xsi:type="ecore:EClass" name="UserDefinedType" abstract="true" eSuperTypes="#//datatypes/DataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.7 User-defined types&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1"
+          eType="#//schema/Schema" eOpposite="#//schema/Schema/userDefinedTypes"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="ordering" eType="#//datatypes/UserDefinedTypeOrdering"
+          containment="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="DataType" abstract="true" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.1 Data types&#xD;&#xA;"/>
+      </eAnnotations>
+      <eOperations name="setContainer">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="This method is used to set the type on the given Column.  It is implemented on the child classes of DataType.  The concrete children classses will know which type relationship to use on Column to set the data type."/>
+        </eAnnotations>
+        <eParameters name="newContainer" eType="#//schema/TypedElement"/>
+      </eOperations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="PredefinedDataType" abstract="true"
+        eSuperTypes="#//datatypes/SQLDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.1 Data types&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="primitiveType" eType="#//datatypes/PrimitiveType"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="CollectionDataType" abstract="true"
+        eSuperTypes="#//datatypes/ConstructedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.10 Collection Types"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="element" lowerBound="1"
+          upperBound="-1" eType="#//datatypes/DataType"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="NumericalDataType" abstract="true"
+        eSuperTypes="#//datatypes/PredefinedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.4 Numbers"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="precision" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="CharacterStringDataType" eSuperTypes="#//datatypes/PredefinedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.2 Character strings"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="length" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"
+          defaultValueLiteral="1"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="coercibility" eType="#//datatypes/CoercibilityType"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="fixedLength" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+          changeable="false"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="collationName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="characterSet" lowerBound="1"
+          eType="#//datatypes/CharacterSet"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="RowDataType" eSuperTypes="#//datatypes/ConstructedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.8 Row Types&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="fields" lowerBound="1"
+          upperBound="-1" eType="#//datatypes/Field" containment="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="ArrayDataType" abstract="true" eSuperTypes="#//datatypes/CollectionDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.10.1 Arrays"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxCardinality" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="MultisetDataType" abstract="true"
+        eSuperTypes="#//datatypes/CollectionDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.10.2 Multisets"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="BooleanDataType" eSuperTypes="#//datatypes/PredefinedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.5 Boolean types&#xD;&#xA;"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="IntervalDataType" eSuperTypes="#//datatypes/PredefinedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.6.2 Intervals&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="leadingQualifier" eType="#//datatypes/IntervalQualifierType"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="trailingQualifier" eType="#//datatypes/IntervalQualifierType"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="leadingFieldPrecision"
+          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="trailingFieldPrecision"
+          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="fractionalSecondsPrecision"
+          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="BinaryStringDataType" eSuperTypes="#//datatypes/PredefinedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.3 Binary strings&#xD;&#xA;"/>
+      </eAnnotations>
+      <eOperations name="equals" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="length" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="CharacterSet" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.2.6 Character sets, 5WD-02-Foundation-2002-12 4.2.7 Universal character sets&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="repertoire" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultCollation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="encoding" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1"
+          eType="#//schema/Schema" eOpposite="#//schema/Schema/charSets"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="CoercibilityType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.2.1 Comparison of character strings&#xD;&#xA;"/>
+      </eAnnotations>
+      <eLiterals name="IMPLICIT"/>
+      <eLiterals name="EXPLICIT" value="1"/>
+      <eLiterals name="COERCIBILE" value="2"/>
+      <eLiterals name="NO_COLLATION" value="3"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="TimeDataType" eSuperTypes="#//datatypes/PredefinedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.6.1 Datetimes&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="fractionalSecondsPrecision"
+          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="timeZone" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+          defaultValueLiteral="false"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="IntervalQualifierType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.6.2 Intervals&#xD;&#xA;"/>
+      </eAnnotations>
+      <eLiterals name="YEAR"/>
+      <eLiterals name="MONTH" value="1"/>
+      <eLiterals name="DAY" value="2"/>
+      <eLiterals name="HOUR" value="3"/>
+      <eLiterals name="MINUTE" value="4"/>
+      <eLiterals name="SECOND" value="5"/>
+      <eLiterals name="FRACTION" value="6"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="DistinctUserDefinedType" eSuperTypes="#//datatypes/UserDefinedType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.7 User-defined types"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="predefinedRepresentation"
+          lowerBound="1" eType="#//datatypes/PredefinedDataType" containment="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="StructuredUserDefinedType" eSuperTypes="#//datatypes/UserDefinedType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.7 User-defined types&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="instantiable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+          defaultValueLiteral="True"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="final" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="super" eType="#//datatypes/StructuredUserDefinedType"
+          eOpposite="#//datatypes/StructuredUserDefinedType/sub"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="sub" upperBound="-1"
+          eType="#//datatypes/StructuredUserDefinedType" eOpposite="#//datatypes/StructuredUserDefinedType/super"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="attributes" upperBound="-1"
+          eType="#//datatypes/AttributeDefinition" containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="methods" upperBound="-1"
+          eType="#//routines/Method" containment="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="OrderingType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.7 User-defined types&#xD;&#xA;"/>
+      </eAnnotations>
+      <eLiterals name="EQUALS"/>
+      <eLiterals name="FULL" value="1"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="OrderingCategoryType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.7 User-defined types&#xD;&#xA;"/>
+      </eAnnotations>
+      <eLiterals name="RELATIVE"/>
+      <eLiterals name="MAP" value="1"/>
+      <eLiterals name="STATE" value="2"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="AttributeDefinition" eSuperTypes="#//schema/TypedElement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.13 Columns, fields, and attributes&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeCheck" eType="#//schema/ReferentialActionType"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeChecked" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="FixedPrecisionDataType" eSuperTypes="#//datatypes/ExactNumericDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.4 Numbers"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="PrimitiveType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.1 Data types"/>
+      </eAnnotations>
+      <eLiterals name="CHARACTER"/>
+      <eLiterals name="CHARACTER_VARYING" value="1"/>
+      <eLiterals name="CHARACTER_LARGE_OBJECT" value="2"/>
+      <eLiterals name="NATIONAL_CHARACTER" value="3"/>
+      <eLiterals name="NATIONAL_CHARACTER_VARYING" value="4"/>
+      <eLiterals name="NATIONAL_CHARACTER_LARGE_OBJECT" value="5"/>
+      <eLiterals name="BINARY" value="6"/>
+      <eLiterals name="BINARY_VARYING" value="7"/>
+      <eLiterals name="BINARY_LARGE_OBJECT" value="8"/>
+      <eLiterals name="NUMERIC" value="9"/>
+      <eLiterals name="DECIMAL" value="10"/>
+      <eLiterals name="SMALLINT" value="11"/>
+      <eLiterals name="INTEGER" value="12"/>
+      <eLiterals name="BIGINT" value="13"/>
+      <eLiterals name="FLOAT" value="14"/>
+      <eLiterals name="REAL" value="15"/>
+      <eLiterals name="DOUBLE_PRECISION" value="16"/>
+      <eLiterals name="BOOLEAN" value="17"/>
+      <eLiterals name="DATE" value="18"/>
+      <eLiterals name="TIME" value="19"/>
+      <eLiterals name="TIMESTAMP" value="20"/>
+      <eLiterals name="INTERVAL" value="21"/>
+      <eLiterals name="DATALINK" value="22"/>
+      <eLiterals name="XML_TYPE" value="23"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Domain" eSuperTypes="#//datatypes/DistinctUserDefinedType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.12 Domains&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="constraint" upperBound="-1"
+          eType="#//constraints/CheckConstraint" containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Field" eSuperTypes="#//schema/TypedElement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.13 Columns, fields, and attributes&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeCheck" eType="#//schema/ReferentialActionType"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeChecked" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="ReferenceDataType" abstract="true"
+        eSuperTypes="#//datatypes/ConstructedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.9 Reference Types"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="scopeTable" lowerBound="1"
+          eType="#//tables/Table"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="referencedType" lowerBound="1"
+          eType="#//datatypes/StructuredUserDefinedType"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="ConstructedDataType" abstract="true"
+        eSuperTypes="#//datatypes/SQLDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.1 Data Types"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLDataType" abstract="true" eSuperTypes="#//datatypes/DataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="SQLDataType represents any non user defined data type.  It was introduced because a TypedElement needs to distinguish between UDTs and non UDTs."/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="DataLinkDataType" eSuperTypes="#//datatypes/PredefinedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Represents a link to a file/location outside the system. "/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="length" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="linkControl" eType="#//datatypes/LinkControlOption"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="integrityControl" eType="#//datatypes/IntegrityControlOption"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="readPermission" eType="#//datatypes/ReadPermissionOption"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="writePermission" eType="#//datatypes/WritePermissionOption"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="recovery" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="unlink" eType="#//datatypes/UnlinkOption"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="LinkControlOption">
+      <eLiterals name="FILE_LINK_CONTROL"/>
+      <eLiterals name="NO_FILE_LINK_CONTROL" value="1"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="IntegrityControlOption">
+      <eLiterals name="ALL"/>
+      <eLiterals name="SELECTIVE" value="1"/>
+      <eLiterals name="NONE" value="2"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="ReadPermissionOption">
+      <eLiterals name="FS"/>
+      <eLiterals name="DB" value="1"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="WritePermissionOption">
+      <eLiterals name="FS"/>
+      <eLiterals name="ADMIN" value="1"/>
+      <eLiterals name="BLOCKED" value="2"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="UnlinkOption">
+      <eLiterals name="RESTORE"/>
+      <eLiterals name="DELETE" value="1"/>
+      <eLiterals name="NONE" value="2"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="UserDefinedTypeOrdering" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.7 User-defined types"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="orderingForm" eType="#//datatypes/OrderingType"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="orderingCategory" eType="#//datatypes/OrderingCategoryType"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="orderingRoutine" lowerBound="1"
+          eType="#//routines/Routine"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="DateDataType" eSuperTypes="#//datatypes/PredefinedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.6.1 Datetimes"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="ExactNumericDataType" abstract="true"
+        eSuperTypes="#//datatypes/NumericalDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.4 Numbers"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="scale" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="ApproximateNumericDataType" eSuperTypes="#//datatypes/NumericalDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.4 Numbers"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="IntegerDataType" eSuperTypes="#//datatypes/ExactNumericDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.4 Numbers"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="XMLDataType" eSuperTypes="#//datatypes/PredefinedDataType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.1 Data Types"/>
+      </eAnnotations>
+    </eClassifiers>
+  </eSubpackages>
+  <eSubpackages name="expressions" nsURI="http:///org/eclipse/datatools/modelbase/sql/expressions.ecore"
+      nsPrefix="SQLExpressions">
+    <eClassifiers xsi:type="ecore:EClass" name="QueryExpression" abstract="true" interface="true">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 7 Query Expression&#xD;&#xA;"/>
+      </eAnnotations>
+      <eOperations name="getSQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eOperations name="setSQL">
+        <eParameters name="sqlText" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      </eOperations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="ValueExpression" abstract="true" interface="true">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.14.5 Base columns and generated columns&#xD;&#xA;"/>
+      </eAnnotations>
+      <eOperations name="getSQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eOperations name="setSQL">
+        <eParameters name="sqlText" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      </eOperations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SearchCondition" abstract="true" interface="true">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12"/>
+      </eAnnotations>
+      <eOperations name="getSQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eOperations name="setSQL">
+        <eParameters name="sqlText" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      </eOperations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="QueryExpressionDefault" eSuperTypes="#//schema/SQLObject #//expressions/QueryExpression">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Place holder for the default query expression."/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="SQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SearchConditionDefault" eSuperTypes="#//schema/SQLObject #//expressions/SearchCondition">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Place holder for the default search condition."/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="SQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="ValueExpressionDefault" eSuperTypes="#//schema/SQLObject #//expressions/ValueExpression">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Place holder for the default value expression."/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="SQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    </eClassifiers>
+  </eSubpackages>
+  <eSubpackages name="routines" nsURI="http:///org/eclipse/datatools/modelbase/sql/routines.ecore"
+      nsPrefix="SQLRoutines">
+    <eClassifiers xsi:type="ecore:EClass" name="Routine" abstract="true" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.27 SQL-invoked routines&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="specificName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="From 5WD-02-Foundation-2002-12&#xD;&#xA;4.27 SQL-invoked routines&#xD;&#xA;&#xD;&#xA;An SQL-invoked routine is uniquely identified by a &lt;specific name> , called the specific name of the SQLinvoked&#xD;&#xA;routine.&#xD;&#xA;&#xD;&#xA;Typically qualified with a schema name. &#xD;&#xA;"/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="language" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="Since there are many languages, rather than constrain ourselves to an enumerated list which is difficult to subclass in the EMF environment, we have chosen to use strings.&#xD;&#xA;&#xD;&#xA;JAVA&#xD;&#xA;SQL&#xD;&#xA;PERL&#xD;&#xA;C&#xD;&#xA;ADA&#xD;&#xA;COBOL&#xD;&#xA;FORTRAN&#xD;&#xA;MUMPS&#xD;&#xA;PASCAL&#xD;&#xA;PLI&#xD;&#xA;and so on..."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterStyle" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="Paraphrased from 5WD-02-Foundation-2002-12 &#xD;&#xA;The spec only calls for two. Though it seems like an easy choice for enumeration as in the language attribute, other vendors have different styles and since enumeration is not good to subclass within the EMF tooling framework, a string representation is used.&#xD;&#xA;&#xD;&#xA;11.50 &lt;SQL-invoked routine>&#xD;&#xA;SQL &#xD;&#xA;GENERAL.&#xD;&#xA;&#xD;&#xA;Used in stored procedures, user defined functions, and methods.&#xD;&#xA;&#xD;&#xA;"/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="deterministic" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="From 5WD-02-Foundation-2002-12&#xD;&#xA;4.27 SQL-invoked routines&#xD;&#xA;&#xD;&#xA;An SQL-invoked routine is either deterministic or possibly non-deterministic. An SQL-invoked function that&#xD;&#xA;is deterministic always returns the identical return value for a given list of SQL argument values. An SQLinvoked&#xD;&#xA;procedure that is deterministic always returns the identical values in its output and inout SQL parameters&#xD;&#xA;for a given list of SQL argument values. An SQL-invoked routine is possibly non-deterministic if it might&#xD;&#xA;produce nonidentical results when invoked with the identical list of SQL argument values."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="sqlDataAccess" eType="#//routines/DataAccess">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="5WD-02-Foundation-2002-12&#xD;&#xA;11.50 &lt;SQL-invoked routine>&#xD;&#xA;&#xD;&#xA;&lt;SQL-data access indication> ::= NO SQL | CONTAINS SQL | READS SQL DATA | MODIFIES SQL DATA&#xD;&#xA;&#xD;&#xA;(see DataAccess enumeration class)"/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="creationTS" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="From 5WD-02-Foundation-2002-12&#xD;&#xA;4.27 SQL-invoked routines&#xD;&#xA;&#xD;&#xA;An SQL-invoked routine is described by a routine descriptor. A routine descriptor includes:&#xD;&#xA;- The creation timestamp.&#xD;&#xA;&#xD;&#xA;Because there is no provision in the spec as to the format of the timestamp, it is left to the individual implementers to determine the format."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastAlteredTS" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="From 5WD-02-Foundation-2002-12&#xD;&#xA;4.27 SQL-invoked routines&#xD;&#xA;&#xD;&#xA;An SQL-invoked routine is described by a routine descriptor. A routine descriptor includes:&#xD;&#xA;- The last-altered timestamp.&#xD;&#xA;&#xD;&#xA;Because there is no provision in the spec as to the format of the timestamp, it is left to the individual implementers to determine the format."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="authorizationID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="From 5WD-02-Foundation-2002-12&#xD;&#xA;4.27 SQL-invoked routines&#xD;&#xA;&#xD;&#xA;An SQL-invoked routine has a routine authorization identifier, which is (directly or indirectly) the authorization&#xD;&#xA;identifier of the owner of the schema that contains the SQL-invoked routine at the time that the SQL-invoked&#xD;&#xA;routine is created."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="security" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="From the below, typical values would be: &quot;DEFINER&quot;, &quot;INVOKER&quot;, &quot;IMPLEMENTATION DEFINED&quot;&#xD;&#xA;Since there are several implementation defined security designations, it is best to go with the string.&#xD;&#xA;&#xD;&#xA;From 5WD-02-Foundation-2002-12&#xD;&#xA;11.50 &lt;SQL-invoked routine>&#xD;&#xA;&#xD;&#xA;&lt;external security clause> ::=&#xD;&#xA;  EXTERNAL SECURITY DEFINER&#xD;&#xA;  | EXTERNAL SECURITY INVOKER&#xD;&#xA;  | EXTERNAL SECURITY IMPLEMENTATION DEFINED&#xD;&#xA;&#xD;&#xA;4.27 SQL-invoked routines&#xD;&#xA;If the SQL-invoked routine is an SQL routine, then the identifiers are determined according to the SQL security&#xD;&#xA;characteristic of the SQL-invoked routine:&#xD;&#xA;- If the SQL security characteristic is DEFINER , then:&#xD;&#xA;  * If the routine authorization identifier is a user identifier, the user identifier is set to the routine authorization&#xD;&#xA;    identifier and the role name is set to null.&#xD;&#xA;  * Otherwise, the role name is set to the routine authorization identifier and the user identifier is set to&#xD;&#xA;    null.&#xD;&#xA;- If the SQL security characteristic is INVOKER , then the identifiers remain unchanged.      &#xD;&#xA;If the SQL-invoked routine is an external routine, then the identifiers are determined according to the external&#xD;&#xA;security characteristic of the SQL-invoked routine:&#xD;&#xA;- If the external security characteristic is DEFINER , then:&#xD;&#xA;  * If the routine authorization identifier is a user identifier, then the user identifier is set to the routine&#xD;&#xA;    authorization identifier and the role name is set to the null value.&#xD;&#xA;  * Otherwise, the role name is set to the routine authorization identifier and the user identifier is set to the&#xD;&#xA;    null value.&#xD;&#xA;- If the external security characteristic is INVOKER , then the identifiers remain unchanged.&#xD;&#xA;- If the external security characteristic is IMPLEMENTATION DEFINED , then the identifiers are set to&#xD;&#xA;implementation-defined values."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="externalName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="From 5WD-02-Foundation-2002-12&#xD;&#xA;from 11.50 SQL-invoked routine:&#xD;&#xA;&#xD;&#xA;The external name of the routine descriptor is &lt;external routine name> .&#xD;&#xA;&lt;external body reference> ::= EXTERNAL [ NAME &lt;external routine name> ] [ &lt;parameter&#xD;&#xA;style clause> ] [ &lt;transform group specification> ] [ &lt;external security clause> ]&#xD;&#xA;&#xD;&#xA;from 4.27 SQL-invoked routines&#xD;&#xA;&lt;external routine name> identifies a program written in some&#xD;&#xA;standard programming language other than SQL .&#xD;&#xA;&#xD;&#xA;from 5.4 Names and identifiers&#xD;&#xA;&lt;external routine name> ::= &lt;identifier> | &lt;character string literal>&#xD;&#xA;An &lt;external routine name> identifies an external routine."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
+          eType="#//routines/Parameter" containment="true" eOpposite="#//routines/Parameter/routine"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="source" eType="#//routines/Source"
+          containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1"
+          eType="#//schema/Schema" eOpposite="#//schema/Schema/routines"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Source" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.27 SQL-invoked routines"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Parameter" eSuperTypes="#//schema/TypedElement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.27 SQL-invoked routines, 5WD-02-Foundation-2002-12 11.50 &lt;SQL-invoked routine>,  Reference: 5WD-02-Foundation-2002-12 4.29.4 Locators  &#xD;&#xA;Reference: Information technology - Database languages - SQL - Part 14: XML-Related Specifications (SQL/XML) 12.7 &lt;SQL-invoked routine>"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="mode" eType="#//routines/ParameterMode">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="5WD-02-Foundation-2002-12&#xD;&#xA;&#xD;&#xA;&lt;SQL parameter declaration> ::= [ &lt;parameter mode> ] [ &lt;SQL parameter name> ] &lt;parameter type> [ RESULT ]&#xD;&#xA;&#xD;&#xA;&lt;parameter mode> ::= IN | OUT | INOUT&#xD;&#xA;&#xD;&#xA;For functions, defaults to IN.&#xD;&#xA;See enumerated class ParameterMode"/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="locator" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="5WD-02-Foundation-2002-12&#xD;&#xA;4.29.4 Locators&#xD;&#xA;A host parameter, a host variable, an SQL parameter of an external routine, or the value returned by an external&#xD;&#xA;function may be specified to be a locator by specifying AS LOCATOR . A locator is an SQL-session object,&#xD;&#xA;rather than SQL-data, that can be used to reference an SQL-data instance. A locator is either a large object&#xD;&#xA;locator, a user-defined type locator, an array locator, or a multiset locator. &#xD;&#xA;&#xD;&#xA;A large object locator is one of the following:&#xD;&#xA;- Binary large object locator, a value of which identifies a binary large object.&#xD;&#xA;- Character large object locator, a value of which identifies a large object character string.&#xD;&#xA;- National character large object locator, a value of which identifies a national large object character string.&#xD;&#xA;&#xD;&#xA;A user-defined type locator identifies a value of the user-defined type specified by the locator specification.&#xD;&#xA;An array locator identifies a value of the array type specified by the locator specification. A multiset locator&#xD;&#xA;identifies a value of the multiset type specified by the locator specification."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="routine" lowerBound="1"
+          eType="#//routines/Routine" transient="true" eOpposite="#//routines/Routine/parameters"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="stringTypeOption" eType="#//datatypes/CharacterStringDataType"
+          containment="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Procedure" eSuperTypes="#//routines/Routine">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.27 SQL-invoked routines, 5WD-02-Foundation-2002-12 11.50 &lt;SQL-invoked routine>&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxResultSets" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="Maximun number of result sets the procedure can return.  If the stored procedure returns more result sets than is specified by this value, then a database error will be generated.&#xD;&#xA;&#xD;&#xA;From 5WD-02-Foundation-2002-12&#xD;&#xA;11.50 &lt;SQL-invoked routine>&#xD;&#xA;&lt;dynamic result sets characteristic> ::= DYNAMIC RESULT SETS &lt;maximum dynamic result sets>"/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="oldSavePoint" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="From 5WD-02-Foundation-2002-12&#xD;&#xA;4.27 SQL-invoked routines&#xD;&#xA;An SQL-invoked procedure may optionally be specified to require a new savepoint level to be established when it is invoked and destroyed on return from the executed routine body. The alternative of not taking a savepoint can also be directly specified with OLD SAVEPOINT LEVEL . When an SQL-invoked function is invoked a new savepoint level is always established.&#xD;&#xA;&#xD;&#xA;11.50 &lt;SQL-invoked routine>&#xD;&#xA;&lt;savepoint level indication> ::= NEW SAVEPOINT LEVEL | OLD SAVEPOINT LEVEL"/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="resultSet" upperBound="-1"
+          eType="#//routines/RoutineResultTable" containment="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Function" eSuperTypes="#//routines/Routine">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.27 SQL-invoked routines"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="nullCall" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="From 5WD-02-Foundation-2002-12&#xD;&#xA;11.50 &lt;SQL-invoked routine>&#xD;&#xA;&lt;null-call clause> ::= RETURNS NULL ON NULL INPUT | CALLED ON NULL INPUT&#xD;&#xA;&#xD;&#xA;If PROCEDURE is specified, then:&#xD;&#xA;- &lt;null-call clause> shall not be specified.&#xD;&#xA;&#xD;&#xA;if &lt;null-call clause> is not specified, then &#xD;&#xA;- CALLED ON NULL INPUT is implicit.&#xD;&#xA;&#xD;&#xA;If the SQL-invoked routine is an SQL-invoked function, then:&#xD;&#xA;- The SQL-invoked routine descriptor includes an indication of whether the SQL-invoked routine&#xD;&#xA;is a null-call function.&#xD;&#xA;&#xD;&#xA;4.27 SQL-invoked routines&#xD;&#xA;A null-call function is an SQL-invoked function that is defined to return the null value if any of its input arguments is the null value. A null-call function is an SQL-invoked function whose &lt;null-call clause> specifies&#xD;&#xA;&quot;RETURNS NULL ON NULL INPUT&quot;."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="From 5WD-02-Foundation-2002-12&#xD;&#xA;11.50 &lt;SQL-invoked routine>&#xD;&#xA;&#xD;&#xA;&lt;dispatch clause> ::= STATIC DISPATCH&#xD;&#xA;&#xD;&#xA;If R is an SQL-invoked regular function and the &lt;SQL parameter declaration list> contains an&#xD;&#xA;&lt;SQL parameter declaration> that specifies a &lt;data type> that is one of:&#xD;&#xA;1) A user-defined type.&#xD;&#xA;2) A collection type whose element type is a user-defined type.&#xD;&#xA;3) A collection type whose element type is a reference type.&#xD;&#xA;4) A reference type.&#xD;&#xA;then &lt;dispatch clause> shall be specified. Otherwise, &lt;dispatch clause> shall not be specified."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="transformGroup" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="From 5WD-02-Foundation-2002-12&#xD;&#xA;4.7.5 Transforms for user-defined types&#xD;&#xA;&#xD;&#xA;Transforms are SQL-invoked functions that are automatically invoked when values of user-defined types are&#xD;&#xA;transferred from SQL-environment to host languages or vice-versa.&#xD;&#xA;&#xD;&#xA;A transform is associated with a user-defined type. A transform identifies a list of transform groups of up to&#xD;&#xA;two SQL-invoked functions, called the transform functions, each identified by a group name. The group name&#xD;&#xA;of a transform group is an &lt;identifier> such that no two transform groups for a transform have the same group&#xD;&#xA;name. The two transform functions are:&#xD;&#xA;- from-sql function : This SQL-invoked function maps the user-defined type value into a value of an SQL&#xD;&#xA;  pre-defined type, and gets invoked whenever a user-defined type value is passed to a host language &#xD;&#xA;  program or an external routine.&#xD;&#xA;- to-sql function : This SQL-invoked function maps a value of an SQL predefined type to a value of a&#xD;&#xA;  user-defined type and gets invoked whenever a user-defined type value is supplied by a host language&#xD;&#xA;  program or an external routine."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="typePreserving" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="mutator" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="returnTable" eType="#//routines/RoutineResultTable"
+          containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="returnScalar" eType="#//routines/Parameter"
+          containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="returnCast" eType="#//routines/Parameter"
+          containment="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="DataAccess">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.27 SQL-invoked routines"/>
+      </eAnnotations>
+      <eLiterals name="NO_SQL"/>
+      <eLiterals name="CONTAINS_SQL" value="1"/>
+      <eLiterals name="READS_SQL_DATA" value="2"/>
+      <eLiterals name="MODIFIES_SQL_DATA" value="3"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="ParameterMode">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 11.50 &lt;SQL-invoked routine>"/>
+      </eAnnotations>
+      <eLiterals name="IN"/>
+      <eLiterals name="OUT" value="1"/>
+      <eLiterals name="INOUT" value="2"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="RoutineResultTable" eSuperTypes="#//tables/Table">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.27 SQL-invoked routines"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Method" eSuperTypes="#//routines/Function">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.27 SQL-invoked routines &#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="overriding" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="constructor" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="UserDefinedFunction" eSuperTypes="#//routines/Function">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.27 SQL-invoked routines"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="BuiltInFunction" eSuperTypes="#//routines/Function">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.27 SQL-invoked routines"/>
+      </eAnnotations>
+    </eClassifiers>
+  </eSubpackages>
+  <eSubpackages name="statements" nsURI="http:///org/eclipse/datatools/modelbase/sql/statements.ecore"
+      nsPrefix="SQLStatements">
+    <eClassifiers xsi:type="ecore:EClass" name="SQLStatement" abstract="true" interface="true">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.33 SQL-statements"/>
+      </eAnnotations>
+      <eOperations name="getSQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eOperations name="setSQL">
+        <eParameters name="sqlText" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      </eOperations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLDataStatement" abstract="true"
+        interface="true" eSuperTypes="#//statements/SQLStatement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 14 Data Manipulation"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLSchemaStatement" abstract="true"
+        interface="true" eSuperTypes="#//statements/SQLStatement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 11 Schema definition and manipulation"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLControlStatement" abstract="true"
+        interface="true" eSuperTypes="#//statements/SQLStatement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 15 Control statements"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLDataChangeStatement" abstract="true"
+        interface="true" eSuperTypes="#//statements/SQLDataStatement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 14 Data Manipulation"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLStatementDefault" eSuperTypes="#//schema/SQLObject #//statements/SQLStatement">
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="SQL" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLConnectionStatement" abstract="true"
+        interface="true" eSuperTypes="#//statements/SQLStatement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 17 Connection management"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLDiagnosticsStatement" abstract="true"
+        interface="true" eSuperTypes="#//statements/SQLStatement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 22 Diagnostics management "/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLDynamicStatement" abstract="true"
+        interface="true" eSuperTypes="#//statements/SQLStatement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 19 Dynamic SQL"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLSessionStatement" abstract="true"
+        interface="true" eSuperTypes="#//statements/SQLStatement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 18 Session management"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="SQLTransactionStatement" abstract="true"
+        interface="true" eSuperTypes="#//statements/SQLStatement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 16 Transaction management"/>
+      </eAnnotations>
+    </eClassifiers>
+  </eSubpackages>
+  <eSubpackages name="tables" nsURI="http:///org/eclipse/datatools/modelbase/sql/tables.ecore"
+      nsPrefix="SQLTables">
+    <eClassifiers xsi:type="ecore:EClass" name="ViewTable" eSuperTypes="#//tables/DerivedTable">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.14 Tables&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="checkType" eType="#//tables/CheckType"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="TemporaryTable" eSuperTypes="#//tables/BaseTable">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.14 Tables&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="local" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="deleteOnCommit" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Table" abstract="true" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.14 Tables"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="columns" lowerBound="1"
+          upperBound="-1" eType="#//tables/Column" containment="true" eOpposite="#//tables/Column/table"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="supertable" eType="#//tables/Table"
+          eOpposite="#//tables/Table/subtables"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="subtables" upperBound="-1"
+          eType="#//tables/Table" eOpposite="#//tables/Table/supertable"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1"
+          eType="#//schema/Schema" eOpposite="#//schema/Schema/tables"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="udt" eType="#//datatypes/StructuredUserDefinedType"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="triggers" upperBound="-1"
+          eType="#//tables/Trigger" eOpposite="#//tables/Trigger/subjectTable"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="index" upperBound="-1"
+          eType="#//constraints/Index" eOpposite="#//constraints/Index/table"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="selfRefColumnGeneration"
+          eType="#//tables/ReferenceType"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="insertable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+          changeable="false" volatile="true" transient="true" derived="true"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="updatable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+          changeable="false" volatile="true" transient="true" derived="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="PersistentTable" eSuperTypes="#//tables/BaseTable">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.14 Tables&#xD;&#xA;"/>
+      </eAnnotations>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="DerivedTable" abstract="true" eSuperTypes="#//tables/Table">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.14 Tables&#xD;&#xA;"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="queryExpression" eType="#//expressions/QueryExpression"
+          containment="true" resolveProxies="false"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="BaseTable" abstract="true" eSuperTypes="#//tables/Table">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.14 Tables&#xD;&#xA;"/>
+      </eAnnotations>
+      <eOperations name="getUniqueConstraints" eType="#//schema/List"/>
+      <eOperations name="getForeignKeys" eType="#//schema/List"/>
+      <eOperations name="getPrimaryKey" eType="#//constraints/PrimaryKey"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="constraints" upperBound="-1"
+          eType="#//constraints/TableConstraint" containment="true" eOpposite="#//constraints/TableConstraint/BaseTable"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="referencingForeignKeys"
+          upperBound="-1" eType="#//constraints/ForeignKey" eOpposite="#//constraints/ForeignKey/referencedTable"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="CheckType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.14 Tables&#xD;&#xA;"/>
+      </eAnnotations>
+      <eLiterals name="CASCADED"/>
+      <eLiterals name="LOCAL" value="1"/>
+      <eLiterals name="NONE" value="2"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="ReferenceType">
+      <eLiterals name="SYSTEM_GENERATED"/>
+      <eLiterals name="USER_GENERATED" value="1"/>
+      <eLiterals name="DERIVED_SELF_REF" value="2"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Column" eSuperTypes="#//schema/TypedElement">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.13 Columns, fields, and attributes&#xD;&#xA;"/>
+      </eAnnotations>
+      <eOperations name="isPartOfForeignKey" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eOperations name="isPartOfUniqueConstraint" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eOperations name="isPartOfPrimaryKey" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="table" lowerBound="1"
+          eType="#//tables/Table" transient="true" eOpposite="#//tables/Table/columns"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="identitySpecifier" eType="#//schema/IdentitySpecifier"
+          containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="generateExpression" eType="#//expressions/ValueExpression"
+          containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="implementationDependent"
+          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+          defaultValueLiteral="False"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="nullable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+          defaultValueLiteral="True"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeCheck" eType="#//schema/ReferentialActionType"
+          defaultValueLiteral="NO_ACTION"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeChecked" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Trigger" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.38 Triggers"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="schema" lowerBound="1"
+          eType="#//schema/Schema" eOpposite="#//schema/Schema/triggers"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="subjectTable" lowerBound="1"
+          eType="#//tables/Table" eOpposite="#//tables/Table/triggers"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="actionStatement" lowerBound="1"
+          upperBound="-1" eType="#//statements/SQLStatement" containment="true"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="triggerColumn" upperBound="-1"
+          eType="#//tables/Column"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="actionGranularity" eType="#//tables/ActionGranularityType"
+          defaultValueLiteral="STATEMENT"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="when" eType="#//expressions/SearchCondition"
+          containment="true" resolveProxies="false"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="timeStamp" eType="#//schema/Date"
+          changeable="false">
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="documentation" value="Triggers on the same table with the same action time are executed in order of creation, i.e. the time stamp, such that older triggers have priority."/>
+        </eAnnotations>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="actionTime" eType="#//tables/ActionTimeType"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="updateType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="insertType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="deleteType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="oldRow" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="newRow" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="oldTable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="newTable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="ActionTimeType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.38 Triggers"/>
+      </eAnnotations>
+      <eLiterals name="AFTER"/>
+      <eLiterals name="BEFORE" value="1"/>
+      <eLiterals name="INSTEADOF" value="2"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EEnum" name="ActionGranularityType">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.38 Triggers"/>
+      </eAnnotations>
+      <eLiterals name="STATEMENT"/>
+      <eLiterals name="ROW" value="1"/>
+    </eClassifiers>
+  </eSubpackages>
+  <eSubpackages name="accesscontrol" nsURI="http:///org/eclipse/datatools/modelbase/sql/accesscontrol.ecore"
+      nsPrefix="SQLAccessControl">
+    <eClassifiers xsi:type="ecore:EClass" name="AuthorizationIdentifier" abstract="true"
+        eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.34.1 Authorization Identifiers"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="ownedSchema" upperBound="-1"
+          eType="#//schema/Schema" eOpposite="#//schema/Schema/owner"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="Database" lowerBound="1"
+          eType="#//schema/Database" eOpposite="#//schema/Database/authorizationIds"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="receivedRoleAuthorization"
+          upperBound="-1" eType="#//accesscontrol/RoleAuthorization" eOpposite="#//accesscontrol/RoleAuthorization/grantee"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="grantedRoleAuthorization"
+          upperBound="-1" eType="#//accesscontrol/RoleAuthorization" eOpposite="#//accesscontrol/RoleAuthorization/grantor"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="grantedPrivilege" upperBound="-1"
+          eType="#//accesscontrol/Privilege" eOpposite="#//accesscontrol/Privilege/grantor"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="receivedPrivilege" upperBound="-1"
+          eType="#//accesscontrol/Privilege" containment="true" eOpposite="#//accesscontrol/Privilege/grantee"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Privilege" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.34.2 Privileges"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="grantable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="action" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="withHierarchy" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="grantor" lowerBound="1"
+          eType="#//accesscontrol/AuthorizationIdentifier" eOpposite="#//accesscontrol/AuthorizationIdentifier/grantedPrivilege"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="grantee" eType="#//accesscontrol/AuthorizationIdentifier"
+          transient="true" eOpposite="#//accesscontrol/AuthorizationIdentifier/receivedPrivilege"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="actionObjects" upperBound="-1"
+          eType="#//schema/SQLObject"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="object" lowerBound="1"
+          eType="#//schema/SQLObject" eOpposite="#//schema/SQLObject/privileges"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Group" eSuperTypes="#//accesscontrol/AuthorizationIdentifier">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.34.1 Authorization Identifiers"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="user" upperBound="-1"
+          eType="#//accesscontrol/User" eOpposite="#//accesscontrol/User/group"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="User" eSuperTypes="#//accesscontrol/AuthorizationIdentifier">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.34.1 Authorization Identifiers"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="group" upperBound="-1"
+          eType="#//accesscontrol/Group" eOpposite="#//accesscontrol/Group/user"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Role" eSuperTypes="#//accesscontrol/AuthorizationIdentifier">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.34.3 Roles"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="roleAuthorization" lowerBound="1"
+          upperBound="-1" eType="#//accesscontrol/RoleAuthorization" eOpposite="#//accesscontrol/RoleAuthorization/role"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="RoleAuthorization" eSuperTypes="#//schema/SQLObject">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value="Reference: 5WD-02-Foundation-2002-12 4.34.3 Roles"/>
+      </eAnnotations>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="grantable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="role" lowerBound="1"
+          eType="#//accesscontrol/Role" eOpposite="#//accesscontrol/Role/roleAuthorization"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="grantee" lowerBound="1"
+          eType="#//accesscontrol/AuthorizationIdentifier" eOpposite="#//accesscontrol/AuthorizationIdentifier/receivedRoleAuthorization"/>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="grantor" lowerBound="1"
+          eType="#//accesscontrol/AuthorizationIdentifier" eOpposite="#//accesscontrol/AuthorizationIdentifier/grantedRoleAuthorization"/>
+    </eClassifiers>
+  </eSubpackages>
 </ecore:EPackage>
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/model/sqlmodel.genmodel b/plugins/org.eclipse.datatools.modelbase.sql/model/sqlmodel.genmodel
index 2e0beb6..89710ce 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/model/sqlmodel.genmodel
+++ b/plugins/org.eclipse.datatools.modelbase.sql/model/sqlmodel.genmodel
@@ -6,17 +6,12 @@
     modelPluginID="org.eclipse.datatools.modelbase.sql" runtimeJar="true" modelName="Sqlmodel"
     editPluginClass="org.eclipse.datatools.modelbase.sql.schema.provider.SqlmodelEditPlugin"
     editorPluginClass="org.eclipse.datatools.modelbase.sql.schema.presentation.SqlmodelEditorPlugin"
-    nonNLSMarkers="true" rootExtendsInterface="org.eclipse.emf.ecore.sdo.EDataObject"
-    rootExtendsClass="org.eclipse.emf.ecore.sdo.impl.EDataObjectImpl" rootImplementsInterface="org.eclipse.emf.ecore.sdo.InternalEDataObject"
-    featureMapWrapperInterface="commonj.sdo.Sequence" featureMapWrapperInternalInterface="org.eclipse.emf.ecore.sdo.util.ESequence"
-    featureMapWrapperClass="org.eclipse.emf.ecore.sdo.util.BasicESequence" importerID="org.eclipse.emf.importer.rose"
+    nonNLSMarkers="true" rootImplementsInterface="" featureMapWrapperInterface=""
+    featureMapWrapperInternalInterface="" featureMapWrapperClass="" importerID="org.eclipse.emf.importer.rose"
     usedGenPackages="../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore">
   <foreignModel>SQLModel.mdl</foreignModel>
   <foreignModel>CDM_EXTRACT_PATH</foreignModel>
   <foreignModel>../..</foreignModel>
-  <staticPackages>http://www.eclipse.org/emf/2003/SDO</staticPackages>
-  <modelPluginVariables>EMF_COMMONJ_SDO=org.eclipse.emf.commonj.sdo</modelPluginVariables>
-  <modelPluginVariables>EMF_ECORE_SDO=org.eclipse.emf.ecore.sdo</modelPluginVariables>
   <genPackages prefix="SQLModel" ecorePackage="sqlmodel.ecore#/">
     <nestedGenPackages prefix="SQLSchema" basePackage="org.eclipse.datatools.modelbase.sql"
         ecorePackage="sqlmodel.ecore#//schema">
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/AuthorizationIdentifierImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/AuthorizationIdentifierImpl.java
index 0051abb..1b51ce4 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/AuthorizationIdentifierImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/AuthorizationIdentifierImpl.java
@@ -53,13 +53,6 @@
  */
 public abstract class AuthorizationIdentifierImpl extends SQLObjectImpl implements AuthorizationIdentifier {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getOwnedSchema() <em>Owned Schema</em>}' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/GroupImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/GroupImpl.java
index 6581958..bfae5c6 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/GroupImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/GroupImpl.java
@@ -39,13 +39,6 @@
  */
 public class GroupImpl extends AuthorizationIdentifierImpl implements Group {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getUser() <em>User</em>}' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/PrivilegeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/PrivilegeImpl.java
index e1a01f6..4bad03d 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/PrivilegeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/PrivilegeImpl.java
@@ -54,13 +54,6 @@
  */
 public class PrivilegeImpl extends SQLObjectImpl implements Privilege {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #isGrantable() <em>Grantable</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/RoleAuthorizationImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/RoleAuthorizationImpl.java
index 1a476cd..1b7fb87 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/RoleAuthorizationImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/RoleAuthorizationImpl.java
@@ -45,13 +45,6 @@
  */
 public class RoleAuthorizationImpl extends SQLObjectImpl implements RoleAuthorization {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #isGrantable() <em>Grantable</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/RoleImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/RoleImpl.java
index 9a99a6d..1466c6d 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/RoleImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/RoleImpl.java
@@ -38,13 +38,6 @@
  */
 public class RoleImpl extends AuthorizationIdentifierImpl implements Role {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getRoleAuthorization() <em>Role Authorization</em>}' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/UserImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/UserImpl.java
index 6167053..fbbcc1f 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/UserImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/accesscontrol/impl/UserImpl.java
@@ -39,13 +39,6 @@
  */
 public class UserImpl extends AuthorizationIdentifierImpl implements User {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getGroup() <em>Group</em>}' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/AssertionImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/AssertionImpl.java
index 79a9460..ec1857e 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/AssertionImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/AssertionImpl.java
@@ -45,13 +45,6 @@
  */
 public class AssertionImpl extends ConstraintImpl implements Assertion {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getSearchCondition() <em>Search Condition</em>}' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/CheckConstraintImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/CheckConstraintImpl.java
index d21f620..2f668aa 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/CheckConstraintImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/CheckConstraintImpl.java
@@ -40,13 +40,6 @@
  */
 public class CheckConstraintImpl extends TableConstraintImpl implements CheckConstraint {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getSearchCondition() <em>Search Condition</em>}' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ConstraintImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ConstraintImpl.java
index 60e7b1a..68e0299 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ConstraintImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ConstraintImpl.java
@@ -40,13 +40,6 @@
  */
 public abstract class ConstraintImpl extends SQLObjectImpl implements Constraint {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #isDeferrable() <em>Deferrable</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ForeignKeyImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ForeignKeyImpl.java
index aca6268..f86d8b9 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ForeignKeyImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ForeignKeyImpl.java
@@ -52,13 +52,6 @@
  */
 public class ForeignKeyImpl extends ReferenceConstraintImpl implements ForeignKey {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getMatch() <em>Match</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/IndexImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/IndexImpl.java
index 9cb3881..ccba522 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/IndexImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/IndexImpl.java
@@ -55,13 +55,6 @@
  */
 public class IndexImpl extends SQLObjectImpl implements Index {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getSchema() <em>Schema</em>}' reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/IndexMemberImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/IndexMemberImpl.java
index f5f2e8f..922c602 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/IndexMemberImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/IndexMemberImpl.java
@@ -41,13 +41,6 @@
  */
 public class IndexMemberImpl extends SQLObjectImpl implements IndexMember {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getIncrementType() <em>Increment Type</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/PrimaryKeyImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/PrimaryKeyImpl.java
index 2a44b18..7df7a39 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/PrimaryKeyImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/PrimaryKeyImpl.java
@@ -37,13 +37,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected PrimaryKeyImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ReferenceConstraintImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ReferenceConstraintImpl.java
index b10ea8c..d02ba5b 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ReferenceConstraintImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/ReferenceConstraintImpl.java
@@ -40,13 +40,6 @@
  */
 public abstract class ReferenceConstraintImpl extends TableConstraintImpl implements ReferenceConstraint {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getMembers() <em>Members</em>}' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/TableConstraintImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/TableConstraintImpl.java
index a21305d..6e6e1e9 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/TableConstraintImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/TableConstraintImpl.java
@@ -44,13 +44,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected TableConstraintImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/UniqueConstraintImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/UniqueConstraintImpl.java
index 43aea5e..d45080c 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/UniqueConstraintImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/constraints/impl/UniqueConstraintImpl.java
@@ -40,13 +40,6 @@
  */
 public class UniqueConstraintImpl extends ReferenceConstraintImpl implements UniqueConstraint {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getForeignKey() <em>Foreign Key</em>}' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ApproximateNumericDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ApproximateNumericDataTypeImpl.java
index 02870e3..8fa77b9 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ApproximateNumericDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ApproximateNumericDataTypeImpl.java
@@ -36,13 +36,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected ApproximateNumericDataTypeImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ArrayDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ArrayDataTypeImpl.java
index f38e5c3..637d66e 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ArrayDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ArrayDataTypeImpl.java
@@ -37,13 +37,6 @@
  */
 public abstract class ArrayDataTypeImpl extends CollectionDataTypeImpl implements ArrayDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getMaxCardinality() <em>Max Cardinality</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/AttributeDefinitionImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/AttributeDefinitionImpl.java
index 62be699..db61233 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/AttributeDefinitionImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/AttributeDefinitionImpl.java
@@ -43,13 +43,6 @@
  */
 public class AttributeDefinitionImpl extends TypedElementImpl implements AttributeDefinition {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getScopeCheck() <em>Scope Check</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/BinaryStringDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/BinaryStringDataTypeImpl.java
index ab7b52c..e9f9e8d 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/BinaryStringDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/BinaryStringDataTypeImpl.java
@@ -38,13 +38,6 @@
  */
 public class BinaryStringDataTypeImpl extends PredefinedDataTypeImpl implements BinaryStringDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getLength() <em>Length</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/BooleanDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/BooleanDataTypeImpl.java
index 505aba2..fb5428b 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/BooleanDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/BooleanDataTypeImpl.java
@@ -36,13 +36,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected BooleanDataTypeImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CharacterSetImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CharacterSetImpl.java
index 5642e94..9ce0517 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CharacterSetImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CharacterSetImpl.java
@@ -43,13 +43,6 @@
  */
 public class CharacterSetImpl extends SQLObjectImpl implements CharacterSet {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getRepertoire() <em>Repertoire</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CharacterStringDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CharacterStringDataTypeImpl.java
index 9065f71..e8ca37b 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CharacterStringDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CharacterStringDataTypeImpl.java
@@ -44,13 +44,6 @@
  */
 public class CharacterStringDataTypeImpl extends PredefinedDataTypeImpl implements CharacterStringDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getLength() <em>Length</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CollectionDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CollectionDataTypeImpl.java
index 850266c..f6a8a67 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CollectionDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/CollectionDataTypeImpl.java
@@ -38,13 +38,6 @@
  */
 public abstract class CollectionDataTypeImpl extends ConstructedDataTypeImpl implements CollectionDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getElement() <em>Element</em>}' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ConstructedDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ConstructedDataTypeImpl.java
index 945d9d3..5f1b448 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ConstructedDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ConstructedDataTypeImpl.java
@@ -35,13 +35,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected ConstructedDataTypeImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DataLinkDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DataLinkDataTypeImpl.java
index a3922f1..89b8510 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DataLinkDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DataLinkDataTypeImpl.java
@@ -49,13 +49,6 @@
  */
 public class DataLinkDataTypeImpl extends PredefinedDataTypeImpl implements DataLinkDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getLength() <em>Length</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DataTypeImpl.java
index 57ac741..357d5ff 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DataTypeImpl.java
@@ -37,13 +37,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected DataTypeImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DateDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DateDataTypeImpl.java
index 870bb14..cf85a4d 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DateDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DateDataTypeImpl.java
@@ -36,13 +36,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected DateDataTypeImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DistinctUserDefinedTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DistinctUserDefinedTypeImpl.java
index c6c57ee..6c8b3ce 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DistinctUserDefinedTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DistinctUserDefinedTypeImpl.java
@@ -41,13 +41,6 @@
  */
 public class DistinctUserDefinedTypeImpl extends UserDefinedTypeImpl implements DistinctUserDefinedType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getPredefinedRepresentation() <em>Predefined Representation</em>}' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DomainImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DomainImpl.java
index cc8696c..dcd6f02 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DomainImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/DomainImpl.java
@@ -45,13 +45,6 @@
  */
 public class DomainImpl extends DistinctUserDefinedTypeImpl implements Domain {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getConstraint() <em>Constraint</em>}' containment reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ExactNumericDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ExactNumericDataTypeImpl.java
index 65dd694..2146528 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ExactNumericDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ExactNumericDataTypeImpl.java
@@ -38,13 +38,6 @@
  */
 public abstract class ExactNumericDataTypeImpl extends NumericalDataTypeImpl implements ExactNumericDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getScale() <em>Scale</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/FieldImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/FieldImpl.java
index f2163e0..0e3ac39 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/FieldImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/FieldImpl.java
@@ -42,13 +42,6 @@
  */
 public class FieldImpl extends TypedElementImpl implements Field {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getScopeCheck() <em>Scope Check</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/FixedPrecisionDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/FixedPrecisionDataTypeImpl.java
index 45b7f4b..576b246 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/FixedPrecisionDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/FixedPrecisionDataTypeImpl.java
@@ -36,13 +36,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected FixedPrecisionDataTypeImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/IntegerDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/IntegerDataTypeImpl.java
index 14bf481..3a70091 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/IntegerDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/IntegerDataTypeImpl.java
@@ -36,13 +36,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected IntegerDataTypeImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/IntervalDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/IntervalDataTypeImpl.java
index 646180e..62ca0a3 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/IntervalDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/IntervalDataTypeImpl.java
@@ -43,13 +43,6 @@
  */
 public class IntervalDataTypeImpl extends PredefinedDataTypeImpl implements IntervalDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getLeadingQualifier() <em>Leading Qualifier</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/MultisetDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/MultisetDataTypeImpl.java
index 0aa953a..ed9f3bc 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/MultisetDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/MultisetDataTypeImpl.java
@@ -35,13 +35,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected MultisetDataTypeImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/NumericalDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/NumericalDataTypeImpl.java
index 367186d..125de6d 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/NumericalDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/NumericalDataTypeImpl.java
@@ -38,13 +38,6 @@
  */
 public abstract class NumericalDataTypeImpl extends PredefinedDataTypeImpl implements NumericalDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getPrecision() <em>Precision</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/PredefinedDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/PredefinedDataTypeImpl.java
index 3f36bd1..da1768e 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/PredefinedDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/PredefinedDataTypeImpl.java
@@ -38,13 +38,6 @@
  */
 public abstract class PredefinedDataTypeImpl extends SQLDataTypeImpl implements PredefinedDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getPrimitiveType() <em>Primitive Type</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ReferenceDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ReferenceDataTypeImpl.java
index 8dd225f..fec754b 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ReferenceDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/ReferenceDataTypeImpl.java
@@ -40,13 +40,6 @@
  */
 public abstract class ReferenceDataTypeImpl extends ConstructedDataTypeImpl implements ReferenceDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getScopeTable() <em>Scope Table</em>}' reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/RowDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/RowDataTypeImpl.java
index 641be82..f5ff2bd 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/RowDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/RowDataTypeImpl.java
@@ -38,13 +38,6 @@
  */
 public class RowDataTypeImpl extends ConstructedDataTypeImpl implements RowDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getFields() <em>Fields</em>}' containment reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/SQLDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/SQLDataTypeImpl.java
index 90a8467..aeb0705 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/SQLDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/SQLDataTypeImpl.java
@@ -35,13 +35,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected SQLDataTypeImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/StructuredUserDefinedTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/StructuredUserDefinedTypeImpl.java
index 7a79a28..70af803 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/StructuredUserDefinedTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/StructuredUserDefinedTypeImpl.java
@@ -50,13 +50,6 @@
  */
 public class StructuredUserDefinedTypeImpl extends UserDefinedTypeImpl implements StructuredUserDefinedType {
 /**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-/**
 	 * The default value of the '{@link #isInstantiable() <em>Instantiable</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/TimeDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/TimeDataTypeImpl.java
index 5a9ad67..510ef94 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/TimeDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/TimeDataTypeImpl.java
@@ -39,13 +39,6 @@
  */
 public class TimeDataTypeImpl extends PredefinedDataTypeImpl implements TimeDataType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getFractionalSecondsPrecision() <em>Fractional Seconds Precision</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/UserDefinedTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/UserDefinedTypeImpl.java
index 2681d49..d5b570b 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/UserDefinedTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/UserDefinedTypeImpl.java
@@ -41,13 +41,6 @@
  */
 public abstract class UserDefinedTypeImpl extends DataTypeImpl implements UserDefinedType {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getSchema() <em>Schema</em>}' reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/UserDefinedTypeOrderingImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/UserDefinedTypeOrderingImpl.java
index bc82c5e..f12e984 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/UserDefinedTypeOrderingImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/UserDefinedTypeOrderingImpl.java
@@ -43,13 +43,6 @@
  */
 public class UserDefinedTypeOrderingImpl extends SQLObjectImpl implements UserDefinedTypeOrdering {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getOrderingForm() <em>Ordering Form</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/XMLDataTypeImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/XMLDataTypeImpl.java
index dcd9256..c6c59ba 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/XMLDataTypeImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/datatypes/impl/XMLDataTypeImpl.java
@@ -36,13 +36,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected XMLDataTypeImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/QueryExpression.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/QueryExpression.java
index 7793caa..383ddb9 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/QueryExpression.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/QueryExpression.java
@@ -10,7 +10,7 @@
  *******************************************************************************/
 package org.eclipse.datatools.modelbase.sql.expressions;
 
-import org.eclipse.emf.ecore.sdo.EDataObject;
+import org.eclipse.emf.ecore.EObject;
 
 /**
  * <!-- begin-user-doc -->
@@ -25,10 +25,9 @@
  *
  * @see org.eclipse.datatools.modelbase.sql.expressions.SQLExpressionsPackage#getQueryExpression()
  * @model interface="true" abstract="true"
- * @extends EDataObject
  * @generated
  */
-public interface QueryExpression extends EDataObject {
+public interface QueryExpression extends EObject {
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/SearchCondition.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/SearchCondition.java
index cb7aa36..661acf9 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/SearchCondition.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/SearchCondition.java
@@ -10,7 +10,7 @@
  *******************************************************************************/
 package org.eclipse.datatools.modelbase.sql.expressions;
 
-import org.eclipse.emf.ecore.sdo.EDataObject;
+import org.eclipse.emf.ecore.EObject;
 
 /**
  * <!-- begin-user-doc -->
@@ -24,10 +24,9 @@
  *
  * @see org.eclipse.datatools.modelbase.sql.expressions.SQLExpressionsPackage#getSearchCondition()
  * @model interface="true" abstract="true"
- * @extends EDataObject
  * @generated
  */
-public interface SearchCondition extends EDataObject {
+public interface SearchCondition extends EObject {
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/ValueExpression.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/ValueExpression.java
index 0aac178..2e85141 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/ValueExpression.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/ValueExpression.java
@@ -10,7 +10,7 @@
  *******************************************************************************/
 package org.eclipse.datatools.modelbase.sql.expressions;
 
-import org.eclipse.emf.ecore.sdo.EDataObject;
+import org.eclipse.emf.ecore.EObject;
 
 /**
  * <!-- begin-user-doc -->
@@ -25,10 +25,9 @@
  *
  * @see org.eclipse.datatools.modelbase.sql.expressions.SQLExpressionsPackage#getValueExpression()
  * @model interface="true" abstract="true"
- * @extends EDataObject
  * @generated
  */
-public interface ValueExpression extends EDataObject {
+public interface ValueExpression extends EObject {
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/QueryExpressionDefaultImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/QueryExpressionDefaultImpl.java
index fcd2e99..0a92b6e 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/QueryExpressionDefaultImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/QueryExpressionDefaultImpl.java
@@ -38,13 +38,6 @@
  */
 public class QueryExpressionDefaultImpl extends SQLObjectImpl implements QueryExpressionDefault {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getSQL() <em>SQL</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/SearchConditionDefaultImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/SearchConditionDefaultImpl.java
index cce7e55..71ecdf6 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/SearchConditionDefaultImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/SearchConditionDefaultImpl.java
@@ -38,13 +38,6 @@
  */
 public class SearchConditionDefaultImpl extends SQLObjectImpl implements SearchConditionDefault {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getSQL() <em>SQL</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/ValueExpressionDefaultImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/ValueExpressionDefaultImpl.java
index 9ed6960..e14924f 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/ValueExpressionDefaultImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/expressions/impl/ValueExpressionDefaultImpl.java
@@ -38,13 +38,6 @@
  */
 public class ValueExpressionDefaultImpl extends SQLObjectImpl implements ValueExpressionDefault {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getSQL() <em>SQL</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/BuiltInFunctionImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/BuiltInFunctionImpl.java
index cfaa8b5..236a15e 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/BuiltInFunctionImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/BuiltInFunctionImpl.java
@@ -42,13 +42,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected BuiltInFunctionImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/FunctionImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/FunctionImpl.java
index 76e1e09..164a7af 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/FunctionImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/FunctionImpl.java
@@ -51,13 +51,6 @@
  */
 public class FunctionImpl extends RoutineImpl implements Function {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #isNullCall() <em>Null Call</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/MethodImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/MethodImpl.java
index 4499a54..5c6bd0f 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/MethodImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/MethodImpl.java
@@ -45,13 +45,6 @@
  */
 public class MethodImpl extends FunctionImpl implements Method {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #isOverriding() <em>Overriding</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/ParameterImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/ParameterImpl.java
index 0cbced0..88c9c40 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/ParameterImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/ParameterImpl.java
@@ -47,13 +47,6 @@
  */
 public class ParameterImpl extends TypedElementImpl implements Parameter {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getMode() <em>Mode</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/ProcedureImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/ProcedureImpl.java
index 945e913..798b2e8 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/ProcedureImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/ProcedureImpl.java
@@ -47,13 +47,6 @@
  */
 public class ProcedureImpl extends RoutineImpl implements Procedure {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getMaxResultSets() <em>Max Result Sets</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/RoutineImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/RoutineImpl.java
index 9115af2..5fd4f65 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/RoutineImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/RoutineImpl.java
@@ -59,13 +59,6 @@
  */
 public abstract class RoutineImpl extends SQLObjectImpl implements Routine {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getSpecificName() <em>Specific Name</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/RoutineResultTableImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/RoutineResultTableImpl.java
index 5e23879..708bd12 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/RoutineResultTableImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/RoutineResultTableImpl.java
@@ -42,13 +42,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected RoutineResultTableImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/SourceImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/SourceImpl.java
index 0783504..b87fb7a 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/SourceImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/SourceImpl.java
@@ -38,13 +38,6 @@
  */
 public class SourceImpl extends SQLObjectImpl implements Source {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getBody() <em>Body</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/UserDefinedFunctionImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/UserDefinedFunctionImpl.java
index 41065e4..837ce74 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/UserDefinedFunctionImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/routines/impl/UserDefinedFunctionImpl.java
@@ -41,13 +41,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected UserDefinedFunctionImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/Comment.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/Comment.java
index bc71b0f..70004b1 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/Comment.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/Comment.java
@@ -2,11 +2,11 @@
  * <copyright>
  * </copyright>
  *
- * $Id$
+ * $Id: Comment.java,v 1.1 2006/09/07 00:19:47 dpchou Exp $
  */
 package org.eclipse.datatools.modelbase.sql.schema;
 
-import org.eclipse.emf.ecore.sdo.EDataObject;
+import org.eclipse.emf.ecore.EObject;
 
 /**
  * <!-- begin-user-doc -->
@@ -23,10 +23,9 @@
  *
  * @see org.eclipse.datatools.modelbase.sql.schema.SQLSchemaPackage#getComment()
  * @model
- * @extends EDataObject
  * @generated
  */
-public interface Comment extends EDataObject {
+public interface Comment extends EObject {
 	/**
 	 * Returns the value of the '<em><b>Description</b></em>' attribute.
 	 * <!-- begin-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/SQLObject.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/SQLObject.java
index 4dd2799..a105422 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/SQLObject.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/SQLObject.java
@@ -14,8 +14,6 @@
 import org.eclipse.emf.ecore.EAnnotation;
 import org.eclipse.emf.ecore.ENamedElement;
 
-import org.eclipse.emf.ecore.sdo.EDataObject;
-
 /**
  * <!-- begin-user-doc -->
  * A representation of the model object '<em><b>SQL Object</b></em>'.
@@ -41,10 +39,9 @@
  *
  * @see org.eclipse.datatools.modelbase.sql.schema.SQLSchemaPackage#getSQLObject()
  * @model abstract="true"
- * @extends EDataObject
  * @generated
  */
-public interface SQLObject extends EDataObject, ENamedElement {
+public interface SQLObject extends ENamedElement {
 	/**
 	 * Returns the value of the '<em><b>Dependencies</b></em>' containment reference list.
 	 * The list contents are of type {@link org.eclipse.datatools.modelbase.sql.schema.Dependency}.
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/CatalogImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/CatalogImpl.java
index 5654a57..546c807 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/CatalogImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/CatalogImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id$
+ * $Id: CatalogImpl.java,v 1.1 2006/09/07 00:19:49 dpchou Exp $
  */
 package org.eclipse.datatools.modelbase.sql.schema.impl;
 
@@ -42,13 +42,6 @@
  */
 public class CatalogImpl extends SQLObjectImpl implements Catalog {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getDatabase() <em>Database</em>}' reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/CommentImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/CommentImpl.java
index 7f5b596..c56c89d 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/CommentImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/CommentImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id$
+ * $Id: CommentImpl.java,v 1.1 2006/09/07 00:19:49 dpchou Exp $
  */
 package org.eclipse.datatools.modelbase.sql.schema.impl;
 
@@ -18,7 +18,7 @@
 
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
 
-import org.eclipse.emf.ecore.sdo.impl.EDataObjectImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
 
 /**
  * <!-- begin-user-doc -->
@@ -34,14 +34,7 @@
  *
  * @generated
  */
-public class CommentImpl extends EDataObjectImpl implements Comment {
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
+public class CommentImpl extends EObjectImpl implements Comment {
 	/**
 	 * The default value of the '{@link #getDescription() <em>Description</em>}' attribute.
 	 * <!-- begin-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/DatabaseImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/DatabaseImpl.java
index e0e3523..53b445b 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/DatabaseImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/DatabaseImpl.java
@@ -55,13 +55,6 @@
  */
 public class DatabaseImpl extends SQLObjectImpl implements Database {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getVendor() <em>Vendor</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/DependencyImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/DependencyImpl.java
index 59fc460..fcc9774 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/DependencyImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/DependencyImpl.java
@@ -39,13 +39,6 @@
  */
 public class DependencyImpl extends SQLObjectImpl implements Dependency {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getTargetEnd() <em>Target End</em>}' reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/EventImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/EventImpl.java
index fa045a0..1c1210d 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/EventImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/EventImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: EventImpl.java,v 1.1 2006/03/03 21:46:27 dpchou Exp $
+ * $Id: EventImpl.java,v 1.2 2006/09/07 00:19:49 dpchou Exp $
  */
 package org.eclipse.datatools.modelbase.sql.schema.impl;
 
@@ -42,13 +42,6 @@
  */
 public class EventImpl extends SQLObjectImpl implements Event {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getFor() <em>For</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/IdentitySpecifierImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/IdentitySpecifierImpl.java
index a655cff..4f52acc 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/IdentitySpecifierImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/IdentitySpecifierImpl.java
@@ -48,13 +48,6 @@
  */
 public class IdentitySpecifierImpl extends SQLObjectImpl implements IdentitySpecifier {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getGenerationType() <em>Generation Type</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SQLObjectImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SQLObjectImpl.java
index ed95571..cd347f1 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SQLObjectImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SQLObjectImpl.java
@@ -38,18 +38,10 @@
 import org.eclipse.emf.ecore.impl.ENamedElementImpl;
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
 import org.eclipse.emf.ecore.impl.EStringToStringMapEntryImpl;
-import org.eclipse.emf.ecore.sdo.InternalEDataObject;
-import org.eclipse.emf.ecore.sdo.util.SDOUtil;
 import org.eclipse.emf.ecore.util.EObjectContainmentEList;
 import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
 import org.eclipse.emf.ecore.util.InternalEList;
 
-import commonj.sdo.DataGraph;
-import commonj.sdo.DataObject;
-import commonj.sdo.Property;
-import commonj.sdo.Sequence;
-import commonj.sdo.Type;
-
 /**
  * <!-- begin-user-doc -->
  * An implementation of the model object '<em><b>SQL Object</b></em>'.
@@ -67,14 +59,7 @@
  *
  * @generated
  */
-public abstract class SQLObjectImpl extends ENamedElementImpl implements SQLObject, InternalEDataObject {
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
+public abstract class SQLObjectImpl extends ENamedElementImpl implements SQLObject {
 	/**
 	 * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' containment reference list.
 	 * <!-- begin-user-doc -->
@@ -346,1068 +331,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public Object get(String path) {
-		return SDOUtil.get(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void set(String path, Object value) {
-		SDOUtil.set(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean isSet(String path) {
-		return SDOUtil.isSet(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void unset(String path) {
-		SDOUtil.unset(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Object get(int propertyIndex) {
-		return SDOUtil.get(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void set(int propertyIndex, Object value) {
-		SDOUtil.set(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean isSet(int propertyIndex) {
-		return SDOUtil.isSet(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void unset(int propertyIndex) {
-		SDOUtil.unset(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Object get(Property property) {
-		return SDOUtil.get(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void set(Property property, Object value) {
-		SDOUtil.set(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean isSet(Property property) {
-		return SDOUtil.isSet(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void unset(Property property) {
-		SDOUtil.unset(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DataObject getContainer() {
-		return SDOUtil.getContainer(this);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Property getContainmentProperty() {
-		return SDOUtil.getContainmentProperty(this);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DataGraph getDataGraph() {
-		return SDOUtil.getDataGraph(this);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Type getType() {
-		return SDOUtil.getType(this);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public BigDecimal getBigDecimal(String path) {
-		return SDOUtil.getBigDecimal(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public BigInteger getBigInteger(String path) {
-		return SDOUtil.getBigInteger(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean getBoolean(String path) {
-		return SDOUtil.getBoolean(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public byte getByte(String path) {
-		return SDOUtil.getByte(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public byte[] getBytes(String path) {
-		return SDOUtil.getBytes(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public char getChar(String path) {
-		return SDOUtil.getChar(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DataObject getDataObject(String path) {
-		return SDOUtil.getDataObject(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Date getDate(String path) {
-		return SDOUtil.getDate(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public double getDouble(String path) {
-		return SDOUtil.getDouble(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public float getFloat(String path) {
-		return SDOUtil.getFloat(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public int getInt(String path) {
-		return SDOUtil.getInt(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public List getList(String path) {
-		return SDOUtil.getList(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public long getLong(String path) {
-		return SDOUtil.getLong(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Sequence getSequence(String path) {
-		return SDOUtil.getSequence(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public short getShort(String path) {
-		return SDOUtil.getShort(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getString(String path) {
-		return SDOUtil.getString(this, path);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBigDecimal(String path, BigDecimal value) {
-		SDOUtil.setBigDecimal(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBigInteger(String path, BigInteger value) {
-		SDOUtil.setBigInteger(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBoolean(String path, boolean value) {
-		SDOUtil.setBoolean(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setByte(String path, byte value) {
-		SDOUtil.setByte(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBytes(String path, byte[] value) {
-		SDOUtil.setBytes(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setChar(String path, char value) {
-		SDOUtil.setChar(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDataObject(String path, DataObject value) {
-		SDOUtil.setDataObject(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDate(String path, Date value) {
-		SDOUtil.setDate(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDouble(String path, double value) {
-		SDOUtil.setDouble(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setFloat(String path, float value) {
-		SDOUtil.setFloat(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setInt(String path, int value) {
-		SDOUtil.setInt(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setList(String path, List value) {
-		SDOUtil.setList(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setLong(String path, long value) {
-		SDOUtil.setLong(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setShort(String path, short value) {
-		SDOUtil.setShort(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setString(String path, String value) {
-		SDOUtil.setString(this, path, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public BigDecimal getBigDecimal(int propertyIndex) {
-		return SDOUtil.getBigDecimal(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public BigInteger getBigInteger(int propertyIndex) {
-		return SDOUtil.getBigInteger(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean getBoolean(int propertyIndex) {
-		return SDOUtil.getBoolean(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public byte getByte(int propertyIndex) {
-		return SDOUtil.getByte(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public byte[] getBytes(int propertyIndex) {
-		return SDOUtil.getBytes(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public char getChar(int propertyIndex) {
-		return SDOUtil.getChar(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DataObject getDataObject(int propertyIndex) {
-		return SDOUtil.getDataObject(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Date getDate(int propertyIndex) {
-		return SDOUtil.getDate(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public double getDouble(int propertyIndex) {
-		return SDOUtil.getDouble(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public float getFloat(int propertyIndex) {
-		return SDOUtil.getFloat(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public int getInt(int propertyIndex) {
-		return SDOUtil.getInt(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public List getList(int propertyIndex) {
-		return SDOUtil.getList(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public long getLong(int propertyIndex) {
-		return SDOUtil.getLong(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Sequence getSequence(int propertyIndex) {
-		return SDOUtil.getSequence(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public short getShort(int propertyIndex) {
-		return SDOUtil.getShort(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getString(int propertyIndex) {
-		return SDOUtil.getString(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBigDecimal(int propertyIndex, BigDecimal value) {
-		SDOUtil.setBigDecimal(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBigInteger(int propertyIndex, BigInteger value) {
-		SDOUtil.setBigInteger(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBoolean(int propertyIndex, boolean value) {
-		SDOUtil.setBoolean(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setByte(int propertyIndex, byte value) {
-		SDOUtil.setByte(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBytes(int propertyIndex, byte[] value) {
-		SDOUtil.setBytes(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setChar(int propertyIndex, char value) {
-		SDOUtil.setChar(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDataObject(int propertyIndex, DataObject value) {
-		SDOUtil.setDataObject(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDate(int propertyIndex, Date value) {
-		SDOUtil.setDate(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDouble(int propertyIndex, double value) {
-		SDOUtil.setDouble(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setFloat(int propertyIndex, float value) {
-		SDOUtil.setFloat(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setInt(int propertyIndex, int value) {
-		SDOUtil.setInt(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setList(int propertyIndex, List value) {
-		SDOUtil.setList(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setLong(int propertyIndex, long value) {
-		SDOUtil.setLong(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setShort(int propertyIndex, short value) {
-		SDOUtil.setShort(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setString(int propertyIndex, String value) {
-		SDOUtil.setString(this, propertyIndex, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public BigDecimal getBigDecimal(Property property) {
-		return SDOUtil.getBigDecimal(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public BigInteger getBigInteger(Property property) {
-		return SDOUtil.getBigInteger(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean getBoolean(Property property) {
-		return SDOUtil.getBoolean(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public byte getByte(Property property) {
-		return SDOUtil.getByte(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public byte[] getBytes(Property property) {
-		return SDOUtil.getBytes(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public char getChar(Property property) {
-		return SDOUtil.getChar(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DataObject getDataObject(Property property) {
-		return SDOUtil.getDataObject(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Date getDate(Property property) {
-		return SDOUtil.getDate(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public double getDouble(Property property) {
-		return SDOUtil.getDouble(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public float getFloat(Property property) {
-		return SDOUtil.getFloat(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public int getInt(Property property) {
-		return SDOUtil.getInt(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public List getList(Property property) {
-		return SDOUtil.getList(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public long getLong(Property property) {
-		return SDOUtil.getLong(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Sequence getSequence(Property property) {
-		return SDOUtil.getSequence(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public short getShort(Property property) {
-		return SDOUtil.getShort(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getString(Property property) {
-		return SDOUtil.getString(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBigDecimal(Property property, BigDecimal value) {
-		SDOUtil.setBigDecimal(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBigInteger(Property property, BigInteger value) {
-		SDOUtil.setBigInteger(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBoolean(Property property, boolean value) {
-		SDOUtil.setBoolean(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setByte(Property property, byte value) {
-		SDOUtil.setByte(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBytes(Property property, byte[] value) {
-		SDOUtil.setBytes(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setChar(Property property, char value) {
-		SDOUtil.setChar(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDataObject(Property property, DataObject value) {
-		SDOUtil.setDataObject(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDate(Property property, Date value) {
-		SDOUtil.setDate(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDouble(Property property, double value) {
-		SDOUtil.setDouble(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setFloat(Property property, float value) {
-		SDOUtil.setFloat(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setInt(Property property, int value) {
-		SDOUtil.setInt(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setList(Property property, List value) {
-		SDOUtil.setList(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setLong(Property property, long value) {
-		SDOUtil.setLong(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setShort(Property property, short value) {
-		SDOUtil.setShort(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setString(Property property, String value) {
-		SDOUtil.setString(this, property, value);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DataObject createDataObject(String propertyName) {
-		return SDOUtil.createDataObject(this, propertyName);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DataObject createDataObject(int propertyIndex) {
-		return SDOUtil.createDataObject(this, propertyIndex);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DataObject createDataObject(Property property) {
-		return SDOUtil.createDataObject(this, property);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DataObject createDataObject(String propertyName, String namespaceURI, String typeName) {
-		return SDOUtil.createDataObject(this, propertyName, namespaceURI, typeName);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DataObject createDataObject(int propertyIndex, String namespaceURI, String typeName) {
-		return SDOUtil.createDataObject(this, propertyIndex, namespaceURI, typeName);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public DataObject createDataObject(Property property, Type type) {
-		return SDOUtil.createDataObject(this, property, type);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void delete() {
-		SDOUtil.delete(this);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public List getInstanceProperties() {
-		return SDOUtil.getInstanceProperties(this);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Object writeReplace() throws ObjectStreamException {
-		return SDOUtil.writeReplace(this);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
 		switch (featureID) {
 			case SQLSchemaPackage.SQL_OBJECT__COMMENTS:
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SQLSchemaFactoryImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SQLSchemaFactoryImpl.java
index 32ee24d..0cf125e 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SQLSchemaFactoryImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SQLSchemaFactoryImpl.java
@@ -72,7 +72,7 @@
 			case SQLSchemaPackage.SEQUENCE: return createSequence();
 			case SQLSchemaPackage.DATABASE: return createDatabase();
 			case SQLSchemaPackage.EVENT: return createEvent();
-			case SQLSchemaPackage.COMMENT: return (EObject)createComment();
+			case SQLSchemaPackage.COMMENT: return createComment();
 			case SQLSchemaPackage.CATALOG: return createCatalog();
 			default:
 				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SchemaImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SchemaImpl.java
index b7661d0..6c9a9e7 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SchemaImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SchemaImpl.java
@@ -69,13 +69,6 @@
  */
 public class SchemaImpl extends SQLObjectImpl implements Schema {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getTriggers() <em>Triggers</em>}' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SequenceImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SequenceImpl.java
index 9d67cd7..e18c5cc 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SequenceImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/SequenceImpl.java
@@ -42,13 +42,6 @@
  */
 public class SequenceImpl extends TypedElementImpl implements Sequence {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getIdentity() <em>Identity</em>}' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/TypedElementImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/TypedElementImpl.java
index 95a0a31..a83e0f9 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/TypedElementImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/schema/impl/TypedElementImpl.java
@@ -41,13 +41,6 @@
  */
 public abstract class TypedElementImpl extends SQLObjectImpl implements TypedElement {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getContainedType() <em>Contained Type</em>}' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/statements/SQLStatement.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/statements/SQLStatement.java
index e25cb11..35c20ae 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/statements/SQLStatement.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/statements/SQLStatement.java
@@ -10,7 +10,7 @@
  *******************************************************************************/
 package org.eclipse.datatools.modelbase.sql.statements;
 
-import org.eclipse.emf.ecore.sdo.EDataObject;
+import org.eclipse.emf.ecore.EObject;
 
 /**
  * <!-- begin-user-doc -->
@@ -24,10 +24,9 @@
  *
  * @see org.eclipse.datatools.modelbase.sql.statements.SQLStatementsPackage#getSQLStatement()
  * @model interface="true" abstract="true"
- * @extends EDataObject
  * @generated
  */
-public interface SQLStatement extends EDataObject {
+public interface SQLStatement extends EObject {
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/statements/impl/SQLStatementDefaultImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/statements/impl/SQLStatementDefaultImpl.java
index ab65374..1913520 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/statements/impl/SQLStatementDefaultImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/statements/impl/SQLStatementDefaultImpl.java
@@ -38,13 +38,6 @@
  */
 public class SQLStatementDefaultImpl extends SQLObjectImpl implements SQLStatementDefault {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getSQL() <em>SQL</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/BaseTableImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/BaseTableImpl.java
index a483449..fa8a884 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/BaseTableImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/BaseTableImpl.java
@@ -53,13 +53,6 @@
  */
 public abstract class BaseTableImpl extends TableImpl implements BaseTable {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getConstraints() <em>Constraints</em>}' containment reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/ColumnImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/ColumnImpl.java
index 2f1249f..f63181c 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/ColumnImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/ColumnImpl.java
@@ -58,13 +58,6 @@
  */
 public class ColumnImpl extends TypedElementImpl implements Column {
 /**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-/**
 	 * The cached value of the '{@link #getIdentitySpecifier() <em>Identity Specifier</em>}' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -434,7 +427,7 @@
 			eNotify(new ENotificationImpl(this, Notification.SET, SQLTablesPackage.COLUMN__SCOPE_CHECKED, oldScopeChecked, scopeChecked));
 	}
 
-			/**
+				/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 */
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/DerivedTableImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/DerivedTableImpl.java
index fa56dc4..405795e 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/DerivedTableImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/DerivedTableImpl.java
@@ -43,13 +43,6 @@
  */
 public abstract class DerivedTableImpl extends TableImpl implements DerivedTable {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getQueryExpression() <em>Query Expression</em>}' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/PersistentTableImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/PersistentTableImpl.java
index b4c3e4e..815a716 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/PersistentTableImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/PersistentTableImpl.java
@@ -40,13 +40,6 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
 	protected PersistentTableImpl() {
 		super();
 	}
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TableImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TableImpl.java
index faab7a6..d42ebaa 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TableImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TableImpl.java
@@ -58,13 +58,6 @@
  */
 public abstract class TableImpl extends SQLObjectImpl implements Table {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getColumns() <em>Columns</em>}' containment reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TemporaryTableImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TemporaryTableImpl.java
index 90abb64..bc12ac8 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TemporaryTableImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TemporaryTableImpl.java
@@ -43,13 +43,6 @@
  */
 public class TemporaryTableImpl extends BaseTableImpl implements TemporaryTable {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #isLocal() <em>Local</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TriggerImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TriggerImpl.java
index ec2aa32..3ab9ad4 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TriggerImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/TriggerImpl.java
@@ -64,13 +64,6 @@
  */
 public class TriggerImpl extends SQLObjectImpl implements Trigger {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The cached value of the '{@link #getSchema() <em>Schema</em>}' reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/ViewTableImpl.java b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/ViewTableImpl.java
index e7242bb..f59617c 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/ViewTableImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql/src/org/eclipse/datatools/modelbase/sql/tables/impl/ViewTableImpl.java
@@ -44,13 +44,6 @@
  */
 public class ViewTableImpl extends DerivedTableImpl implements ViewTable {
 	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final long serialVersionUID = 1L;
-
-	/**
 	 * The default value of the '{@link #getCheckType() <em>Check Type</em>}' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->