[173482] Regenerated org.eclipse.datatools.modelbase.sql.query to work with current version of EMF and base SQL model.
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/META-INF/MANIFEST.MF b/plugins/org.eclipse.datatools.modelbase.sql.query/META-INF/MANIFEST.MF
index 192e63d..38013c4 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.datatools.modelbase.sql.query; singleton:=true
-Bundle-Version: 1.0.0.200609291
+Bundle-Version: 1.0.0.200702071
 Bundle-ClassPath: sqlquerymodel.jar
 Bundle-Activator: org.eclipse.datatools.modelbase.sql.query.util.SQLQueryModelPlugin
 Bundle-Vendor: %providerName
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/NullOrderingType.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/NullOrderingType.java
index 5ce308f..5004052 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/NullOrderingType.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/NullOrderingType.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: NullOrderingType.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: NullOrderingType.java,v 1.3 2005/12/22 22:18:49 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -75,7 +75,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	public static final NullOrderingType NONE_LITERAL = new NullOrderingType(NONE, "NONE");
+	public static final NullOrderingType NONE_LITERAL = new NullOrderingType(NONE, "NONE", "NONE");
 
 	/**
 	 * The '<em><b>NULLS FIRST</b></em>' literal object.
@@ -85,7 +85,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final NullOrderingType NULLS_FIRST_LITERAL = new NullOrderingType(NULLS_FIRST, "NULLS_FIRST");
+    public static final NullOrderingType NULLS_FIRST_LITERAL = new NullOrderingType(NULLS_FIRST, "NULLS_FIRST", "NULLS_FIRST");
 
 	/**
 	 * The '<em><b>NULLS LAST</b></em>' literal object.
@@ -95,7 +95,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final NullOrderingType NULLS_LAST_LITERAL = new NullOrderingType(NULLS_LAST, "NULLS_LAST");
+    public static final NullOrderingType NULLS_LAST_LITERAL = new NullOrderingType(NULLS_LAST, "NULLS_LAST", "NULLS_LAST");
 
 	/**
 	 * An array of all the '<em><b>Null Ordering Type</b></em>' enumerators.
@@ -119,15 +119,15 @@
 	public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
 	/**
-	 * Returns the '<em><b>Null Ordering Type</b></em>' literal with the specified name.
+	 * Returns the '<em><b>Null Ordering Type</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public static NullOrderingType get(String name) {
+	public static NullOrderingType get(String literal) {
 		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
 			NullOrderingType result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
+			if (result.toString().equals(literal)) {
 				return result;
 			}
 		}
@@ -135,7 +135,23 @@
 	}
 
 	/**
-	 * Returns the '<em><b>Null Ordering Type</b></em>' literal with the specified value.
+	 * Returns the '<em><b>Null Ordering Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static NullOrderingType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			NullOrderingType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Null Ordering Type</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -155,8 +171,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private NullOrderingType(int value, String name) {
-		super(value, name);
+	private NullOrderingType(int value, String name, String literal) {
+		super(value, name, literal);
 	}
 
 } //NullOrderingType
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/OrderingSpecType.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/OrderingSpecType.java
index f70dd41..395dc47 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/OrderingSpecType.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/OrderingSpecType.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: OrderingSpecType.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: OrderingSpecType.java,v 1.3 2005/12/22 22:18:50 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -75,7 +75,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	public static final OrderingSpecType NONE_LITERAL = new OrderingSpecType(NONE, "NONE");
+	public static final OrderingSpecType NONE_LITERAL = new OrderingSpecType(NONE, "NONE", "NONE");
 
 	/**
 	 * The '<em><b>ASC</b></em>' literal object.
@@ -85,7 +85,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	public static final OrderingSpecType ASC_LITERAL = new OrderingSpecType(ASC, "ASC");
+	public static final OrderingSpecType ASC_LITERAL = new OrderingSpecType(ASC, "ASC", "ASC");
 
 	/**
 	 * The '<em><b>DESC</b></em>' literal object.
@@ -95,7 +95,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	public static final OrderingSpecType DESC_LITERAL = new OrderingSpecType(DESC, "DESC");
+	public static final OrderingSpecType DESC_LITERAL = new OrderingSpecType(DESC, "DESC", "DESC");
 
 	/**
 	 * An array of all the '<em><b>Ordering Spec Type</b></em>' enumerators.
@@ -119,15 +119,15 @@
 	public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
 	/**
-	 * Returns the '<em><b>Ordering Spec Type</b></em>' literal with the specified name.
+	 * Returns the '<em><b>Ordering Spec Type</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public static OrderingSpecType get(String name) {
+	public static OrderingSpecType get(String literal) {
 		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
 			OrderingSpecType result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
+			if (result.toString().equals(literal)) {
 				return result;
 			}
 		}
@@ -135,7 +135,23 @@
 	}
 
 	/**
-	 * Returns the '<em><b>Ordering Spec Type</b></em>' literal with the specified value.
+	 * Returns the '<em><b>Ordering Spec Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static OrderingSpecType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			OrderingSpecType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Ordering Spec Type</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -155,8 +171,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private OrderingSpecType(int value, String name) {
-		super(value, name);
+	private OrderingSpecType(int value, String name, String literal) {
+		super(value, name, literal);
 	}
 
 } //OrderingSpecType
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/PredicateComparisonOperator.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/PredicateComparisonOperator.java
index af06b26..c005a8c 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/PredicateComparisonOperator.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/PredicateComparisonOperator.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: PredicateComparisonOperator.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: PredicateComparisonOperator.java,v 1.3 2005/12/22 22:18:49 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -100,7 +100,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final PredicateComparisonOperator EQUAL_LITERAL = new PredicateComparisonOperator(EQUAL, "EQUAL");
+    public static final PredicateComparisonOperator EQUAL_LITERAL = new PredicateComparisonOperator(EQUAL, "EQUAL", "EQUAL");
 
 	/**
 	 * The '<em><b>NOT EQUAL</b></em>' literal object.
@@ -114,7 +114,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final PredicateComparisonOperator NOT_EQUAL_LITERAL = new PredicateComparisonOperator(NOT_EQUAL, "NOT_EQUAL");
+    public static final PredicateComparisonOperator NOT_EQUAL_LITERAL = new PredicateComparisonOperator(NOT_EQUAL, "NOT_EQUAL", "NOT_EQUAL");
 
 	/**
 	 * The '<em><b>LESS THAN</b></em>' literal object.
@@ -128,7 +128,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final PredicateComparisonOperator LESS_THAN_LITERAL = new PredicateComparisonOperator(LESS_THAN, "LESS_THAN");
+    public static final PredicateComparisonOperator LESS_THAN_LITERAL = new PredicateComparisonOperator(LESS_THAN, "LESS_THAN", "LESS_THAN");
 
 	/**
 	 * The '<em><b>GREATER THAN</b></em>' literal object.
@@ -142,7 +142,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final PredicateComparisonOperator GREATER_THAN_LITERAL = new PredicateComparisonOperator(GREATER_THAN, "GREATER_THAN");
+    public static final PredicateComparisonOperator GREATER_THAN_LITERAL = new PredicateComparisonOperator(GREATER_THAN, "GREATER_THAN", "GREATER_THAN");
 
 	/**
 	 * The '<em><b>LESS THAN OR EQUAL</b></em>' literal object.
@@ -156,7 +156,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final PredicateComparisonOperator LESS_THAN_OR_EQUAL_LITERAL = new PredicateComparisonOperator(LESS_THAN_OR_EQUAL, "LESS_THAN_OR_EQUAL");
+    public static final PredicateComparisonOperator LESS_THAN_OR_EQUAL_LITERAL = new PredicateComparisonOperator(LESS_THAN_OR_EQUAL, "LESS_THAN_OR_EQUAL", "LESS_THAN_OR_EQUAL");
 
 	/**
 	 * The '<em><b>GREATER THAN OR EQUAL</b></em>' literal object.
@@ -170,7 +170,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final PredicateComparisonOperator GREATER_THAN_OR_EQUAL_LITERAL = new PredicateComparisonOperator(GREATER_THAN_OR_EQUAL, "GREATER_THAN_OR_EQUAL");
+    public static final PredicateComparisonOperator GREATER_THAN_OR_EQUAL_LITERAL = new PredicateComparisonOperator(GREATER_THAN_OR_EQUAL, "GREATER_THAN_OR_EQUAL", "GREATER_THAN_OR_EQUAL");
 
 	/**
 	 * An array of all the '<em><b>Predicate Comparison Operator</b></em>' enumerators.
@@ -197,15 +197,15 @@
     public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
 	/**
-	 * Returns the '<em><b>Predicate Comparison Operator</b></em>' literal with the specified name.
+	 * Returns the '<em><b>Predicate Comparison Operator</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public static PredicateComparisonOperator get(String name) {
+    public static PredicateComparisonOperator get(String literal) {
 		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
 			PredicateComparisonOperator result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
+			if (result.toString().equals(literal)) {
 				return result;
 			}
 		}
@@ -213,7 +213,23 @@
 	}
 
 	/**
-	 * Returns the '<em><b>Predicate Comparison Operator</b></em>' literal with the specified value.
+	 * Returns the '<em><b>Predicate Comparison Operator</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static PredicateComparisonOperator getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			PredicateComparisonOperator result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Predicate Comparison Operator</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
@@ -236,8 +252,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private PredicateComparisonOperator(int value, String name) {
-		super(value, name);
+	private PredicateComparisonOperator(int value, String name, String literal) {
+		super(value, name, literal);
 	}
 
 } //SQLPredicateComparisonOperator
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/PredicateQuantifiedType.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/PredicateQuantifiedType.java
index bd9c52e..35ba048 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/PredicateQuantifiedType.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/PredicateQuantifiedType.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: PredicateQuantifiedType.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: PredicateQuantifiedType.java,v 1.3 2005/12/22 22:18:49 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -67,7 +67,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final PredicateQuantifiedType SOME_LITERAL = new PredicateQuantifiedType(SOME, "SOME");
+    public static final PredicateQuantifiedType SOME_LITERAL = new PredicateQuantifiedType(SOME, "SOME", "SOME");
 
 	/**
 	 * The '<em><b>ANY</b></em>' literal object.
@@ -81,7 +81,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final PredicateQuantifiedType ANY_LITERAL = new PredicateQuantifiedType(ANY, "ANY");
+    public static final PredicateQuantifiedType ANY_LITERAL = new PredicateQuantifiedType(ANY, "ANY", "ANY");
 
 	/**
 	 * The '<em><b>ALL</b></em>' literal object.
@@ -95,7 +95,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final PredicateQuantifiedType ALL_LITERAL = new PredicateQuantifiedType(ALL, "ALL");
+    public static final PredicateQuantifiedType ALL_LITERAL = new PredicateQuantifiedType(ALL, "ALL", "ALL");
 
 	/**
 	 * An array of all the '<em><b>Predicate Quantified Type</b></em>' enumerators.
@@ -119,15 +119,15 @@
     public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
 	/**
-	 * Returns the '<em><b>Predicate Quantified Type</b></em>' literal with the specified name.
+	 * Returns the '<em><b>Predicate Quantified Type</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public static PredicateQuantifiedType get(String name) {
+    public static PredicateQuantifiedType get(String literal) {
 		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
 			PredicateQuantifiedType result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
+			if (result.toString().equals(literal)) {
 				return result;
 			}
 		}
@@ -135,7 +135,23 @@
 	}
 
 	/**
-	 * Returns the '<em><b>Predicate Quantified Type</b></em>' literal with the specified value.
+	 * Returns the '<em><b>Predicate Quantified Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static PredicateQuantifiedType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			PredicateQuantifiedType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Predicate Quantified Type</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
@@ -155,8 +171,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private PredicateQuantifiedType(int value, String name) {
-		super(value, name);
+	private PredicateQuantifiedType(int value, String name, String literal) {
+		super(value, name, literal);
 	}
 
 } //SQLPredicateQuantifiedType
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/QueryCombinedOperator.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/QueryCombinedOperator.java
index 4774aa2..71cc8d2 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/QueryCombinedOperator.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/QueryCombinedOperator.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: QueryCombinedOperator.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: QueryCombinedOperator.java,v 1.3 2005/12/22 22:18:49 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -108,7 +108,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final QueryCombinedOperator UNION_LITERAL = new QueryCombinedOperator(UNION, "UNION");
+    public static final QueryCombinedOperator UNION_LITERAL = new QueryCombinedOperator(UNION, "UNION", "UNION");
 
 	/**
 	 * The '<em><b>UNION ALL</b></em>' literal object.
@@ -122,7 +122,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final QueryCombinedOperator UNION_ALL_LITERAL = new QueryCombinedOperator(UNION_ALL, "UNION_ALL");
+    public static final QueryCombinedOperator UNION_ALL_LITERAL = new QueryCombinedOperator(UNION_ALL, "UNION_ALL", "UNION_ALL");
 
 	/**
 	 * The '<em><b>INTERSECT</b></em>' literal object.
@@ -136,7 +136,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final QueryCombinedOperator INTERSECT_LITERAL = new QueryCombinedOperator(INTERSECT, "INTERSECT");
+    public static final QueryCombinedOperator INTERSECT_LITERAL = new QueryCombinedOperator(INTERSECT, "INTERSECT", "INTERSECT");
 
 	/**
 	 * The '<em><b>INTERSECT ALL</b></em>' literal object.
@@ -150,7 +150,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final QueryCombinedOperator INTERSECT_ALL_LITERAL = new QueryCombinedOperator(INTERSECT_ALL, "INTERSECT_ALL");
+    public static final QueryCombinedOperator INTERSECT_ALL_LITERAL = new QueryCombinedOperator(INTERSECT_ALL, "INTERSECT_ALL", "INTERSECT_ALL");
 
 	/**
 	 * The '<em><b>EXCEPT</b></em>' literal object.
@@ -164,7 +164,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final QueryCombinedOperator EXCEPT_LITERAL = new QueryCombinedOperator(EXCEPT, "EXCEPT");
+    public static final QueryCombinedOperator EXCEPT_LITERAL = new QueryCombinedOperator(EXCEPT, "EXCEPT", "EXCEPT");
 
 	/**
 	 * The '<em><b>EXCEPT ALL</b></em>' literal object.
@@ -178,7 +178,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final QueryCombinedOperator EXCEPT_ALL_LITERAL = new QueryCombinedOperator(EXCEPT_ALL, "EXCEPT_ALL");
+    public static final QueryCombinedOperator EXCEPT_ALL_LITERAL = new QueryCombinedOperator(EXCEPT_ALL, "EXCEPT_ALL", "EXCEPT_ALL");
 
 	/**
 	 * An array of all the '<em><b>Query Combined Operator</b></em>' enumerators.
@@ -205,15 +205,15 @@
     public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
 	/**
-	 * Returns the '<em><b>Query Combined Operator</b></em>' literal with the specified name.
+	 * Returns the '<em><b>Query Combined Operator</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public static QueryCombinedOperator get(String name) {
+    public static QueryCombinedOperator get(String literal) {
 		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
 			QueryCombinedOperator result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
+			if (result.toString().equals(literal)) {
 				return result;
 			}
 		}
@@ -221,7 +221,23 @@
 	}
 
 	/**
-	 * Returns the '<em><b>Query Combined Operator</b></em>' literal with the specified value.
+	 * Returns the '<em><b>Query Combined Operator</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static QueryCombinedOperator getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			QueryCombinedOperator result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Query Combined Operator</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
@@ -244,8 +260,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private QueryCombinedOperator(int value, String name) {
-		super(value, name);
+	private QueryCombinedOperator(int value, String name, String literal) {
+		super(value, name, literal);
 	}
 
 } //SQLQueryCombinedOperator
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SQLQueryModelFactory.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SQLQueryModelFactory.java
index 372a98c..975bc3c 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SQLQueryModelFactory.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SQLQueryModelFactory.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: SQLQueryFactory.java,v 1.1 2005/12/16 13:11:14 bpayton Exp $
+ * $Id: SQLQueryModelFactory.java,v 1.1 2005/12/22 22:18:49 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -16,14 +16,14 @@
  * @see org.eclipse.datatools.modelbase.sql.query.SQLQueryModelPackage
  * @generated
  */
-public interface SQLQueryModelFactory extends EFactory{
+public interface SQLQueryModelFactory extends EFactory {
 	/**
 	 * The singleton instance of the factory.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	SQLQueryModelFactory eINSTANCE = new org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelFactoryImpl();
+	SQLQueryModelFactory eINSTANCE = org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelFactoryImpl.init();
 
 	/**
 	 * Returns a new object of class '<em>Query Delete Statement</em>'.
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SQLQueryModelPackage.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SQLQueryModelPackage.java
index 848e957..966179b 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SQLQueryModelPackage.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SQLQueryModelPackage.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: SQLQueryPackage.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: SQLQueryModelPackage.java,v 1.1 2005/12/22 22:18:50 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -29,7 +29,7 @@
  * @model kind="package"
  * @generated
  */
-public interface SQLQueryModelPackage extends EPackage{
+public interface SQLQueryModelPackage extends EPackage {
 	/**
 	 * The package name.
 	 * <!-- begin-user-doc -->
@@ -118,7 +118,16 @@
 	int SQL_QUERY_OBJECT__LABEL = SQLSchemaPackage.SQL_OBJECT__LABEL;
 
 	/**
-	 * The number of structural features of the the '<em>SQL Query Object</em>' class.
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SQL_QUERY_OBJECT__COMMENTS = SQLSchemaPackage.SQL_OBJECT__COMMENTS;
+
+	/**
+	 * The number of structural features of the '<em>SQL Query Object</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -182,7 +191,16 @@
 	int QUERY_STATEMENT__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
-	 * The number of structural features of the the '<em>Query Statement</em>' class.
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_STATEMENT__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
+	 * The number of structural features of the '<em>Query Statement</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -246,7 +264,16 @@
 	int QUERY_CHANGE_STATEMENT__LABEL = QUERY_STATEMENT__LABEL;
 
 	/**
-	 * The number of structural features of the the '<em>Query Change Statement</em>' class.
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_CHANGE_STATEMENT__COMMENTS = QUERY_STATEMENT__COMMENTS;
+
+	/**
+	 * The number of structural features of the '<em>Query Change Statement</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -310,6 +337,15 @@
 	int QUERY_DELETE_STATEMENT__LABEL = QUERY_CHANGE_STATEMENT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_DELETE_STATEMENT__COMMENTS = QUERY_CHANGE_STATEMENT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Where Current Of Clause</b></em>' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -337,7 +373,7 @@
 	int QUERY_DELETE_STATEMENT__TARGET_TABLE = QUERY_CHANGE_STATEMENT_FEATURE_COUNT + 2;
 
 	/**
-	 * The number of structural features of the the '<em>Query Delete Statement</em>' class.
+	 * The number of structural features of the '<em>Query Delete Statement</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -401,6 +437,15 @@
 	int QUERY_INSERT_STATEMENT__LABEL = QUERY_CHANGE_STATEMENT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_INSERT_STATEMENT__COMMENTS = QUERY_CHANGE_STATEMENT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Source Query</b></em>' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -437,7 +482,7 @@
 	int QUERY_INSERT_STATEMENT__TARGET_COLUMN_LIST = QUERY_CHANGE_STATEMENT_FEATURE_COUNT + 3;
 
 	/**
-	 * The number of structural features of the the '<em>Query Insert Statement</em>' class.
+	 * The number of structural features of the '<em>Query Insert Statement</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -501,6 +546,15 @@
 	int QUERY_SELECT_STATEMENT__LABEL = QUERY_STATEMENT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_SELECT_STATEMENT__COMMENTS = QUERY_STATEMENT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Query Expr</b></em>' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -519,7 +573,7 @@
 	int QUERY_SELECT_STATEMENT__ORDER_BY_CLAUSE = QUERY_STATEMENT_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Query Select Statement</em>' class.
+	 * The number of structural features of the '<em>Query Select Statement</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -583,6 +637,15 @@
 	int QUERY_UPDATE_STATEMENT__LABEL = QUERY_CHANGE_STATEMENT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_UPDATE_STATEMENT__COMMENTS = QUERY_CHANGE_STATEMENT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Assignment Clause</b></em>' containment reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -619,7 +682,7 @@
 	int QUERY_UPDATE_STATEMENT__TARGET_TABLE = QUERY_CHANGE_STATEMENT_FEATURE_COUNT + 3;
 
 	/**
-	 * The number of structural features of the the '<em>Query Update Statement</em>' class.
+	 * The number of structural features of the '<em>Query Update Statement</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -683,6 +746,15 @@
 	int UPDATE_ASSIGNMENT_EXPRESSION__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int UPDATE_ASSIGNMENT_EXPRESSION__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Update Statement</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -710,7 +782,7 @@
 	int UPDATE_ASSIGNMENT_EXPRESSION__UPDATE_SOURCE = SQL_QUERY_OBJECT_FEATURE_COUNT + 2;
 
 	/**
-	 * The number of structural features of the the '<em>Update Assignment Expression</em>' class.
+	 * The number of structural features of the '<em>Update Assignment Expression</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -774,6 +846,15 @@
 	int CURSOR_REFERENCE__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CURSOR_REFERENCE__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Update Statement</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -792,7 +873,7 @@
 	int CURSOR_REFERENCE__DELETE_STATEMENT = SQL_QUERY_OBJECT_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Cursor Reference</em>' class.
+	 * The number of structural features of the '<em>Cursor Reference</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -856,6 +937,15 @@
 	int QUERY_SEARCH_CONDITION__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_SEARCH_CONDITION__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -946,7 +1036,7 @@
 	int QUERY_SEARCH_CONDITION__NEST = SQL_QUERY_OBJECT_FEATURE_COUNT + 9;
 
 	/**
-	 * The number of structural features of the the '<em>Query Search Condition</em>' class.
+	 * The number of structural features of the '<em>Query Search Condition</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -1010,6 +1100,15 @@
 	int TABLE_REFERENCE__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_REFERENCE__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Joined Right</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -1046,7 +1145,7 @@
 	int TABLE_REFERENCE__NEST = SQL_QUERY_OBJECT_FEATURE_COUNT + 3;
 
 	/**
-	 * The number of structural features of the the '<em>Table Reference</em>' class.
+	 * The number of structural features of the '<em>Table Reference</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -1110,6 +1209,15 @@
 	int TABLE_EXPRESSION__LABEL = TABLE_REFERENCE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_EXPRESSION__COMMENTS = TABLE_REFERENCE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Joined Right</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -1182,7 +1290,7 @@
 	int TABLE_EXPRESSION__VALUE_EXPR_COLUMNS = TABLE_REFERENCE_FEATURE_COUNT + 3;
 
 	/**
-	 * The number of structural features of the the '<em>Table Expression</em>' class.
+	 * The number of structural features of the '<em>Table Expression</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -1246,6 +1354,15 @@
 	int QUERY_EXPRESSION_BODY__LABEL = TABLE_EXPRESSION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_EXPRESSION_BODY__COMMENTS = TABLE_EXPRESSION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Joined Right</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -1372,7 +1489,7 @@
 	int QUERY_EXPRESSION_BODY__WITH_TABLE_SPECIFICATION = TABLE_EXPRESSION_FEATURE_COUNT + 5;
 
 	/**
-	 * The number of structural features of the the '<em>Query Expression Body</em>' class.
+	 * The number of structural features of the '<em>Query Expression Body</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -1436,6 +1553,15 @@
 	int QUERY_VALUE_EXPRESSION__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_VALUE_EXPRESSION__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -1733,7 +1859,7 @@
 	int QUERY_VALUE_EXPRESSION__UPDATE_SOURCE_EXPR_LIST = SQL_QUERY_OBJECT_FEATURE_COUNT + 32;
 
 	/**
-	 * The number of structural features of the the '<em>Query Value Expression</em>' class.
+	 * The number of structural features of the '<em>Query Value Expression</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -1797,6 +1923,15 @@
 	int QUERY_EXPRESSION_ROOT__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_EXPRESSION_ROOT__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Insert Statement</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -1878,7 +2013,7 @@
 	int QUERY_EXPRESSION_ROOT__VALUE_EXPR_SCALAR_SELECTS = SQL_QUERY_OBJECT_FEATURE_COUNT + 8;
 
 	/**
-	 * The number of structural features of the the '<em>Query Expression Root</em>' class.
+	 * The number of structural features of the '<em>Query Expression Root</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -1942,6 +2077,15 @@
 	int VALUES_ROW__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUES_ROW__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Insert Statement</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -1969,7 +2113,7 @@
 	int VALUES_ROW__QUERY_VALUES = SQL_QUERY_OBJECT_FEATURE_COUNT + 2;
 
 	/**
-	 * The number of structural features of the the '<em>Values Row</em>' class.
+	 * The number of structural features of the '<em>Values Row</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -2033,6 +2177,15 @@
 	int QUERY_VALUES__LABEL = QUERY_EXPRESSION_BODY__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_VALUES__COMMENTS = QUERY_EXPRESSION_BODY__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Joined Right</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -2168,7 +2321,7 @@
 	int QUERY_VALUES__VALUES_ROW_LIST = QUERY_EXPRESSION_BODY_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Query Values</em>' class.
+	 * The number of structural features of the '<em>Query Values</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -2232,6 +2385,15 @@
 	int TABLE_JOINED__LABEL = TABLE_REFERENCE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_JOINED__COMMENTS = TABLE_REFERENCE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Joined Right</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -2304,7 +2466,7 @@
 	int TABLE_JOINED__TABLE_REF_LEFT = TABLE_REFERENCE_FEATURE_COUNT + 3;
 
 	/**
-	 * The number of structural features of the the '<em>Table Joined</em>' class.
+	 * The number of structural features of the '<em>Table Joined</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -2368,6 +2530,15 @@
 	int WITH_TABLE_SPECIFICATION__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int WITH_TABLE_SPECIFICATION__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Query Expression Root</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -2404,7 +2575,7 @@
 	int WITH_TABLE_SPECIFICATION__COLUMN_NAME_LIST = SQL_QUERY_OBJECT_FEATURE_COUNT + 3;
 
 	/**
-	 * The number of structural features of the the '<em>With Table Specification</em>' class.
+	 * The number of structural features of the '<em>With Table Specification</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -2468,6 +2639,15 @@
 	int PREDICATE__LABEL = QUERY_SEARCH_CONDITION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE__COMMENTS = QUERY_SEARCH_CONDITION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -2585,7 +2765,7 @@
 	int PREDICATE__SELECTIVITY_VALUE = QUERY_SEARCH_CONDITION_FEATURE_COUNT + 2;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate</em>' class.
+	 * The number of structural features of the '<em>Predicate</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -2649,6 +2829,15 @@
 	int SEARCH_CONDITION_COMBINED__LABEL = QUERY_SEARCH_CONDITION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SEARCH_CONDITION_COMBINED__COMMENTS = QUERY_SEARCH_CONDITION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -2766,7 +2955,7 @@
 	int SEARCH_CONDITION_COMBINED__RIGHT_CONDITION = QUERY_SEARCH_CONDITION_FEATURE_COUNT + 2;
 
 	/**
-	 * The number of structural features of the the '<em>Search Condition Combined</em>' class.
+	 * The number of structural features of the '<em>Search Condition Combined</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -2830,6 +3019,15 @@
 	int ORDER_BY_SPECIFICATION__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ORDER_BY_SPECIFICATION__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Descending</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -2866,7 +3064,7 @@
 	int ORDER_BY_SPECIFICATION__SELECT_STATEMENT = SQL_QUERY_OBJECT_FEATURE_COUNT + 3;
 
 	/**
-	 * The number of structural features of the the '<em>Order By Specification</em>' class.
+	 * The number of structural features of the '<em>Order By Specification</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -2930,6 +3128,15 @@
 	int ORDER_BY_VALUE_EXPRESSION__LABEL = ORDER_BY_SPECIFICATION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ORDER_BY_VALUE_EXPRESSION__COMMENTS = ORDER_BY_SPECIFICATION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Descending</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -2975,7 +3182,7 @@
 	int ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR = ORDER_BY_SPECIFICATION_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Order By Value Expression</em>' class.
+	 * The number of structural features of the '<em>Order By Value Expression</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -3039,6 +3246,15 @@
 	int QUERY_COMBINED__LABEL = QUERY_EXPRESSION_BODY__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_COMBINED__COMMENTS = QUERY_EXPRESSION_BODY__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Joined Right</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -3192,7 +3408,7 @@
 	int QUERY_COMBINED__RIGHT_QUERY = QUERY_EXPRESSION_BODY_FEATURE_COUNT + 2;
 
 	/**
-	 * The number of structural features of the the '<em>Query Combined</em>' class.
+	 * The number of structural features of the '<em>Query Combined</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -3256,6 +3472,15 @@
 	int QUERY_SELECT__LABEL = QUERY_EXPRESSION_BODY__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_SELECT__COMMENTS = QUERY_EXPRESSION_BODY__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Joined Right</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -3445,7 +3670,7 @@
 	int QUERY_SELECT__INTO_CLAUSE = QUERY_EXPRESSION_BODY_FEATURE_COUNT + 6;
 
 	/**
-	 * The number of structural features of the the '<em>Query Select</em>' class.
+	 * The number of structural features of the '<em>Query Select</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -3509,6 +3734,15 @@
 	int GROUPING_SPECIFICATION__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GROUPING_SPECIFICATION__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Query Select</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -3518,7 +3752,7 @@
 	int GROUPING_SPECIFICATION__QUERY_SELECT = SQL_QUERY_OBJECT_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Grouping Specification</em>' class.
+	 * The number of structural features of the '<em>Grouping Specification</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -3582,6 +3816,15 @@
 	int QUERY_RESULT_SPECIFICATION__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_RESULT_SPECIFICATION__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Query Select</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -3591,7 +3834,7 @@
 	int QUERY_RESULT_SPECIFICATION__QUERY_SELECT = SQL_QUERY_OBJECT_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Query Result Specification</em>' class.
+	 * The number of structural features of the '<em>Query Result Specification</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -3655,6 +3898,15 @@
 	int RESULT_TABLE_ALL_COLUMNS__LABEL = QUERY_RESULT_SPECIFICATION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RESULT_TABLE_ALL_COLUMNS__COMMENTS = QUERY_RESULT_SPECIFICATION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Query Select</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -3673,7 +3925,7 @@
 	int RESULT_TABLE_ALL_COLUMNS__TABLE_EXPR = QUERY_RESULT_SPECIFICATION_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Result Table All Columns</em>' class.
+	 * The number of structural features of the '<em>Result Table All Columns</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -3737,6 +3989,15 @@
 	int RESULT_COLUMN__LABEL = QUERY_RESULT_SPECIFICATION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RESULT_COLUMN__COMMENTS = QUERY_RESULT_SPECIFICATION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Query Select</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -3764,7 +4025,7 @@
 	int RESULT_COLUMN__ORDER_BY_RESULT_COL = QUERY_RESULT_SPECIFICATION_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Result Column</em>' class.
+	 * The number of structural features of the '<em>Result Column</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -3828,6 +4089,15 @@
 	int PREDICATE_BASIC__LABEL = PREDICATE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_BASIC__COMMENTS = PREDICATE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -3972,7 +4242,7 @@
 	int PREDICATE_BASIC__LEFT_VALUE_EXPR = PREDICATE_FEATURE_COUNT + 2;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate Basic</em>' class.
+	 * The number of structural features of the '<em>Predicate Basic</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -4036,6 +4306,15 @@
 	int PREDICATE_QUANTIFIED__LABEL = PREDICATE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_QUANTIFIED__COMMENTS = PREDICATE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -4153,7 +4432,7 @@
 	int PREDICATE_QUANTIFIED__SELECTIVITY_VALUE = PREDICATE__SELECTIVITY_VALUE;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate Quantified</em>' class.
+	 * The number of structural features of the '<em>Predicate Quantified</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -4217,6 +4496,15 @@
 	int PREDICATE_BETWEEN__LABEL = PREDICATE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_BETWEEN__COMMENTS = PREDICATE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -4370,7 +4658,7 @@
 	int PREDICATE_BETWEEN__RIGHT_VALUE_EXPR2 = PREDICATE_FEATURE_COUNT + 3;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate Between</em>' class.
+	 * The number of structural features of the '<em>Predicate Between</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -4434,6 +4722,15 @@
 	int PREDICATE_EXISTS__LABEL = PREDICATE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_EXISTS__COMMENTS = PREDICATE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -4560,7 +4857,7 @@
 	int PREDICATE_EXISTS__QUERY_EXPR = PREDICATE_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate Exists</em>' class.
+	 * The number of structural features of the '<em>Predicate Exists</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -4624,6 +4921,15 @@
 	int PREDICATE_IN__LABEL = PREDICATE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_IN__COMMENTS = PREDICATE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -4750,7 +5056,7 @@
 	int PREDICATE_IN__NOT_IN = PREDICATE_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate In</em>' class.
+	 * The number of structural features of the '<em>Predicate In</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -4814,6 +5120,15 @@
 	int PREDICATE_LIKE__LABEL = PREDICATE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_LIKE__COMMENTS = PREDICATE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -4967,7 +5282,7 @@
 	int PREDICATE_LIKE__ESCAPE_VALUE_EXPR = PREDICATE_FEATURE_COUNT + 3;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate Like</em>' class.
+	 * The number of structural features of the '<em>Predicate Like</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -5031,6 +5346,15 @@
 	int PREDICATE_IS_NULL__LABEL = PREDICATE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_IS_NULL__COMMENTS = PREDICATE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -5166,7 +5490,7 @@
 	int PREDICATE_IS_NULL__VALUE_EXPR = PREDICATE_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate Is Null</em>' class.
+	 * The number of structural features of the '<em>Predicate Is Null</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -5230,6 +5554,15 @@
 	int PREDICATE_QUANTIFIED_VALUE_SELECT__LABEL = PREDICATE_QUANTIFIED__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_QUANTIFIED_VALUE_SELECT__COMMENTS = PREDICATE_QUANTIFIED__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -5383,7 +5716,7 @@
 	int PREDICATE_QUANTIFIED_VALUE_SELECT__VALUE_EXPR = PREDICATE_QUANTIFIED_FEATURE_COUNT + 3;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate Quantified Value Select</em>' class.
+	 * The number of structural features of the '<em>Predicate Quantified Value Select</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -5447,6 +5780,15 @@
 	int PREDICATE_QUANTIFIED_ROW_SELECT__LABEL = PREDICATE_QUANTIFIED__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_QUANTIFIED_ROW_SELECT__COMMENTS = PREDICATE_QUANTIFIED__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -5591,7 +5933,7 @@
 	int PREDICATE_QUANTIFIED_ROW_SELECT__VALUE_EXPR_LIST = PREDICATE_QUANTIFIED_FEATURE_COUNT + 2;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate Quantified Row Select</em>' class.
+	 * The number of structural features of the '<em>Predicate Quantified Row Select</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -5655,6 +5997,15 @@
 	int PREDICATE_IN_VALUE_SELECT__LABEL = PREDICATE_IN__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_IN_VALUE_SELECT__COMMENTS = PREDICATE_IN__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -5799,7 +6150,7 @@
 	int PREDICATE_IN_VALUE_SELECT__VALUE_EXPR = PREDICATE_IN_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate In Value Select</em>' class.
+	 * The number of structural features of the '<em>Predicate In Value Select</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -5863,6 +6214,15 @@
 	int PREDICATE_IN_VALUE_LIST__LABEL = PREDICATE_IN__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_IN_VALUE_LIST__COMMENTS = PREDICATE_IN__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -6007,7 +6367,7 @@
 	int PREDICATE_IN_VALUE_LIST__VALUE_EXPR = PREDICATE_IN_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate In Value List</em>' class.
+	 * The number of structural features of the '<em>Predicate In Value List</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -6071,6 +6431,15 @@
 	int PREDICATE_IN_VALUE_ROW_SELECT__LABEL = PREDICATE_IN__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PREDICATE_IN_VALUE_ROW_SELECT__COMMENTS = PREDICATE_IN__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -6215,7 +6584,7 @@
 	int PREDICATE_IN_VALUE_ROW_SELECT__QUERY_EXPR = PREDICATE_IN_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Predicate In Value Row Select</em>' class.
+	 * The number of structural features of the '<em>Predicate In Value Row Select</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -6279,6 +6648,15 @@
 	int VALUE_EXPRESSION_ATOMIC__LABEL = QUERY_VALUE_EXPRESSION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_ATOMIC__COMMENTS = QUERY_VALUE_EXPRESSION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -6576,7 +6954,7 @@
 	int VALUE_EXPRESSION_ATOMIC__UPDATE_SOURCE_EXPR_LIST = QUERY_VALUE_EXPRESSION__UPDATE_SOURCE_EXPR_LIST;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Atomic</em>' class.
+	 * The number of structural features of the '<em>Value Expression Atomic</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -6640,6 +7018,15 @@
 	int VALUE_EXPRESSION_SIMPLE__LABEL = VALUE_EXPRESSION_ATOMIC__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_SIMPLE__COMMENTS = VALUE_EXPRESSION_ATOMIC__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -6946,7 +7333,7 @@
 	int VALUE_EXPRESSION_SIMPLE__VALUE = VALUE_EXPRESSION_ATOMIC_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Simple</em>' class.
+	 * The number of structural features of the '<em>Value Expression Simple</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -7010,6 +7397,15 @@
 	int VALUE_EXPRESSION_COLUMN__LABEL = VALUE_EXPRESSION_ATOMIC__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_COLUMN__COMMENTS = VALUE_EXPRESSION_ATOMIC__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -7352,7 +7748,7 @@
 	int VALUE_EXPRESSION_COLUMN__TABLE_IN_DATABASE = VALUE_EXPRESSION_ATOMIC_FEATURE_COUNT + 4;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Column</em>' class.
+	 * The number of structural features of the '<em>Value Expression Column</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -7416,6 +7812,15 @@
 	int VALUE_EXPRESSION_VARIABLE__LABEL = VALUE_EXPRESSION_ATOMIC__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_VARIABLE__COMMENTS = VALUE_EXPRESSION_ATOMIC__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -7722,7 +8127,7 @@
 	int VALUE_EXPRESSION_VARIABLE__QUERY_SELECT = VALUE_EXPRESSION_ATOMIC_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Variable</em>' class.
+	 * The number of structural features of the '<em>Value Expression Variable</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -7786,6 +8191,15 @@
 	int VALUE_EXPRESSION_SCALAR_SELECT__LABEL = VALUE_EXPRESSION_ATOMIC__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_SCALAR_SELECT__COMMENTS = VALUE_EXPRESSION_ATOMIC__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -8092,7 +8506,7 @@
 	int VALUE_EXPRESSION_SCALAR_SELECT__QUERY_EXPR = VALUE_EXPRESSION_ATOMIC_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Scalar Select</em>' class.
+	 * The number of structural features of the '<em>Value Expression Scalar Select</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -8156,6 +8570,15 @@
 	int VALUE_EXPRESSION_LABELED_DURATION__LABEL = VALUE_EXPRESSION_ATOMIC__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_LABELED_DURATION__COMMENTS = VALUE_EXPRESSION_ATOMIC__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -8471,7 +8894,7 @@
 	int VALUE_EXPRESSION_LABELED_DURATION__VALUE_EXPR = VALUE_EXPRESSION_ATOMIC_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Labeled Duration</em>' class.
+	 * The number of structural features of the '<em>Value Expression Labeled Duration</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -8535,6 +8958,15 @@
 	int VALUE_EXPRESSION_CASE__LABEL = VALUE_EXPRESSION_ATOMIC__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_CASE__COMMENTS = VALUE_EXPRESSION_ATOMIC__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -8841,7 +9273,7 @@
 	int VALUE_EXPRESSION_CASE__CASE_ELSE = VALUE_EXPRESSION_ATOMIC_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Case</em>' class.
+	 * The number of structural features of the '<em>Value Expression Case</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -8905,6 +9337,15 @@
 	int VALUE_EXPRESSION_CAST__LABEL = VALUE_EXPRESSION_ATOMIC__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_CAST__COMMENTS = VALUE_EXPRESSION_ATOMIC__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -9211,7 +9652,7 @@
 	int VALUE_EXPRESSION_CAST__VALUE_EXPR = VALUE_EXPRESSION_ATOMIC_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Cast</em>' class.
+	 * The number of structural features of the '<em>Value Expression Cast</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -9275,6 +9716,15 @@
 	int VALUE_EXPRESSION_NULL_VALUE__LABEL = VALUE_EXPRESSION_ATOMIC__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_NULL_VALUE__COMMENTS = VALUE_EXPRESSION_ATOMIC__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -9572,7 +10022,7 @@
 	int VALUE_EXPRESSION_NULL_VALUE__UPDATE_SOURCE_EXPR_LIST = VALUE_EXPRESSION_ATOMIC__UPDATE_SOURCE_EXPR_LIST;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Null Value</em>' class.
+	 * The number of structural features of the '<em>Value Expression Null Value</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -9636,6 +10086,15 @@
 	int VALUE_EXPRESSION_DEFAULT_VALUE__LABEL = VALUE_EXPRESSION_ATOMIC__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_DEFAULT_VALUE__COMMENTS = VALUE_EXPRESSION_ATOMIC__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -9933,7 +10392,7 @@
 	int VALUE_EXPRESSION_DEFAULT_VALUE__UPDATE_SOURCE_EXPR_LIST = VALUE_EXPRESSION_ATOMIC__UPDATE_SOURCE_EXPR_LIST;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Default Value</em>' class.
+	 * The number of structural features of the '<em>Value Expression Default Value</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -9997,6 +10456,15 @@
 	int VALUE_EXPRESSION_FUNCTION__LABEL = VALUE_EXPRESSION_ATOMIC__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_FUNCTION__COMMENTS = VALUE_EXPRESSION_ATOMIC__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -10339,7 +10807,7 @@
 	int VALUE_EXPRESSION_FUNCTION__FUNCTION = VALUE_EXPRESSION_ATOMIC_FEATURE_COUNT + 4;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Function</em>' class.
+	 * The number of structural features of the '<em>Value Expression Function</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -10403,6 +10871,15 @@
 	int VALUE_EXPRESSION_COMBINED__LABEL = QUERY_VALUE_EXPRESSION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_COMBINED__COMMENTS = QUERY_VALUE_EXPRESSION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -10727,7 +11204,7 @@
 	int VALUE_EXPRESSION_COMBINED__RIGHT_VALUE_EXPR = QUERY_VALUE_EXPRESSION_FEATURE_COUNT + 2;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Combined</em>' class.
+	 * The number of structural features of the '<em>Value Expression Combined</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -10791,6 +11268,15 @@
 	int GROUPING_SETS__LABEL = GROUPING_SPECIFICATION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GROUPING_SETS__COMMENTS = GROUPING_SPECIFICATION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Query Select</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -10809,7 +11295,7 @@
 	int GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST = GROUPING_SPECIFICATION_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Grouping Sets</em>' class.
+	 * The number of structural features of the '<em>Grouping Sets</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -10873,6 +11359,15 @@
 	int GROUPING__LABEL = GROUPING_SPECIFICATION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GROUPING__COMMENTS = GROUPING_SPECIFICATION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Query Select</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -10891,7 +11386,7 @@
 	int GROUPING__GROUPING_SETS_ELEMENT_EXPR = GROUPING_SPECIFICATION_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Grouping</em>' class.
+	 * The number of structural features of the '<em>Grouping</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -10955,6 +11450,15 @@
 	int GROUPING_SETS_ELEMENT__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GROUPING_SETS_ELEMENT__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Grouping Sets</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -10964,7 +11468,7 @@
 	int GROUPING_SETS_ELEMENT__GROUPING_SETS = SQL_QUERY_OBJECT_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Grouping Sets Element</em>' class.
+	 * The number of structural features of the '<em>Grouping Sets Element</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -11028,6 +11532,15 @@
 	int GROUPING_SETS_ELEMENT_SUBLIST__LABEL = GROUPING_SETS_ELEMENT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GROUPING_SETS_ELEMENT_SUBLIST__COMMENTS = GROUPING_SETS_ELEMENT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Grouping Sets</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -11046,7 +11559,7 @@
 	int GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST = GROUPING_SETS_ELEMENT_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Grouping Sets Element Sublist</em>' class.
+	 * The number of structural features of the '<em>Grouping Sets Element Sublist</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -11110,6 +11623,15 @@
 	int GROUPING_SETS_ELEMENT_EXPRESSION__LABEL = GROUPING_SETS_ELEMENT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GROUPING_SETS_ELEMENT_EXPRESSION__COMMENTS = GROUPING_SETS_ELEMENT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Grouping Sets</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -11137,7 +11659,7 @@
 	int GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING = GROUPING_SETS_ELEMENT_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Grouping Sets Element Expression</em>' class.
+	 * The number of structural features of the '<em>Grouping Sets Element Expression</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -11201,6 +11723,15 @@
 	int SUPER_GROUP__LABEL = GROUPING__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUPER_GROUP__COMMENTS = GROUPING__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Query Select</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -11237,7 +11768,7 @@
 	int SUPER_GROUP__SUPER_GROUP_ELEMENT_LIST = GROUPING_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Super Group</em>' class.
+	 * The number of structural features of the '<em>Super Group</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -11301,6 +11832,15 @@
 	int GROUPING_EXPRESSION__LABEL = GROUPING__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int GROUPING_EXPRESSION__COMMENTS = GROUPING__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Query Select</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -11337,7 +11877,7 @@
 	int GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR = GROUPING_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Grouping Expression</em>' class.
+	 * The number of structural features of the '<em>Grouping Expression</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -11401,6 +11941,15 @@
 	int SUPER_GROUP_ELEMENT__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUPER_GROUP_ELEMENT__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Super Group</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -11410,7 +11959,7 @@
 	int SUPER_GROUP_ELEMENT__SUPER_GROUP = SQL_QUERY_OBJECT_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Super Group Element</em>' class.
+	 * The number of structural features of the '<em>Super Group Element</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -11474,6 +12023,15 @@
 	int SUPER_GROUP_ELEMENT_SUBLIST__LABEL = SUPER_GROUP_ELEMENT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUPER_GROUP_ELEMENT_SUBLIST__COMMENTS = SUPER_GROUP_ELEMENT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Super Group</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -11492,7 +12050,7 @@
 	int SUPER_GROUP_ELEMENT_SUBLIST__SUPER_GROUP_ELEMENT_EXPR_LIST = SUPER_GROUP_ELEMENT_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Super Group Element Sublist</em>' class.
+	 * The number of structural features of the '<em>Super Group Element Sublist</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -11556,6 +12114,15 @@
 	int SUPER_GROUP_ELEMENT_EXPRESSION__LABEL = SUPER_GROUP_ELEMENT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUPER_GROUP_ELEMENT_EXPRESSION__COMMENTS = SUPER_GROUP_ELEMENT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Super Group</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -11583,7 +12150,7 @@
 	int SUPER_GROUP_ELEMENT_EXPRESSION__GROUPING_EXPR = SUPER_GROUP_ELEMENT_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Super Group Element Expression</em>' class.
+	 * The number of structural features of the '<em>Super Group Element Expression</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -11647,6 +12214,15 @@
 	int VALUE_EXPRESSION_CASE_SEARCH__LABEL = VALUE_EXPRESSION_CASE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_CASE_SEARCH__COMMENTS = VALUE_EXPRESSION_CASE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -11962,7 +12538,7 @@
 	int VALUE_EXPRESSION_CASE_SEARCH__SEARCH_CONTENT_LIST = VALUE_EXPRESSION_CASE_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Case Search</em>' class.
+	 * The number of structural features of the '<em>Value Expression Case Search</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -12026,6 +12602,15 @@
 	int VALUE_EXPRESSION_CASE_SIMPLE__LABEL = VALUE_EXPRESSION_CASE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_CASE_SIMPLE__COMMENTS = VALUE_EXPRESSION_CASE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -12350,7 +12935,7 @@
 	int VALUE_EXPRESSION_CASE_SIMPLE__VALUE_EXPR = VALUE_EXPRESSION_CASE_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Case Simple</em>' class.
+	 * The number of structural features of the '<em>Value Expression Case Simple</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -12414,6 +12999,15 @@
 	int VALUE_EXPRESSION_CASE_ELSE__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_CASE_ELSE__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Value Expr Case</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -12432,7 +13026,7 @@
 	int VALUE_EXPRESSION_CASE_ELSE__VALUE_EXPR = SQL_QUERY_OBJECT_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Case Else</em>' class.
+	 * The number of structural features of the '<em>Value Expression Case Else</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -12496,6 +13090,15 @@
 	int VALUE_EXPRESSION_CASE_SEARCH_CONTENT__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_CASE_SEARCH_CONTENT__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Value Expr</b></em>' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -12523,7 +13126,7 @@
 	int VALUE_EXPRESSION_CASE_SEARCH_CONTENT__VALUE_EXPR_CASE_SEARCH = SQL_QUERY_OBJECT_FEATURE_COUNT + 2;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Case Search Content</em>' class.
+	 * The number of structural features of the '<em>Value Expression Case Search Content</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -12587,6 +13190,15 @@
 	int VALUE_EXPRESSION_CASE_SIMPLE_CONTENT__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_CASE_SIMPLE_CONTENT__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Value Expr Case Simple</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -12614,7 +13226,7 @@
 	int VALUE_EXPRESSION_CASE_SIMPLE_CONTENT__RESULT_VALUE_EXPR = SQL_QUERY_OBJECT_FEATURE_COUNT + 2;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Case Simple Content</em>' class.
+	 * The number of structural features of the '<em>Value Expression Case Simple Content</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -12678,6 +13290,15 @@
 	int TABLE_IN_DATABASE__LABEL = TABLE_EXPRESSION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_IN_DATABASE__COMMENTS = TABLE_EXPRESSION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Joined Right</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -12795,7 +13416,7 @@
 	int TABLE_IN_DATABASE__DERIVED_COLUMN_LIST = TABLE_EXPRESSION_FEATURE_COUNT + 4;
 
 	/**
-	 * The number of structural features of the the '<em>Table In Database</em>' class.
+	 * The number of structural features of the '<em>Table In Database</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -12859,6 +13480,15 @@
 	int TABLE_FUNCTION__LABEL = TABLE_EXPRESSION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_FUNCTION__COMMENTS = TABLE_EXPRESSION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Joined Right</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -12931,7 +13561,7 @@
 	int TABLE_FUNCTION__VALUE_EXPR_COLUMNS = TABLE_EXPRESSION__VALUE_EXPR_COLUMNS;
 
 	/**
-	 * The number of structural features of the the '<em>Table Function</em>' class.
+	 * The number of structural features of the '<em>Table Function</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -12995,6 +13625,15 @@
 	int COLUMN_NAME__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int COLUMN_NAME__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Correlation</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -13013,7 +13652,7 @@
 	int COLUMN_NAME__WITH_TABLE_SPECIFICATION = SQL_QUERY_OBJECT_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Column Name</em>' class.
+	 * The number of structural features of the '<em>Column Name</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -13077,6 +13716,15 @@
 	int TABLE_NESTED__LABEL = TABLE_REFERENCE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_NESTED__COMMENTS = TABLE_REFERENCE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Joined Right</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -13122,7 +13770,7 @@
 	int TABLE_NESTED__NESTED_TABLE_REF = TABLE_REFERENCE_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Table Nested</em>' class.
+	 * The number of structural features of the '<em>Table Nested</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -13186,7 +13834,16 @@
 	int QUERY_MERGE_STATEMENT__LABEL = QUERY_CHANGE_STATEMENT__LABEL;
 
 	/**
-	 * The number of structural features of the the '<em>Query Merge Statement</em>' class.
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUERY_MERGE_STATEMENT__COMMENTS = QUERY_CHANGE_STATEMENT__COMMENTS;
+
+	/**
+	 * The number of structural features of the '<em>Query Merge Statement</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -13250,6 +13907,15 @@
 	int SEARCH_CONDITION_NESTED__LABEL = QUERY_SEARCH_CONDITION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SEARCH_CONDITION_NESTED__COMMENTS = QUERY_SEARCH_CONDITION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Negated Condition</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -13349,7 +14015,7 @@
 	int SEARCH_CONDITION_NESTED__NESTED_CONDITION = QUERY_SEARCH_CONDITION_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Search Condition Nested</em>' class.
+	 * The number of structural features of the '<em>Search Condition Nested</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -13413,6 +14079,15 @@
 	int VALUE_EXPRESSION_NESTED__LABEL = QUERY_VALUE_EXPRESSION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_EXPRESSION_NESTED__COMMENTS = QUERY_VALUE_EXPRESSION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Unary Operator</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -13719,7 +14394,7 @@
 	int VALUE_EXPRESSION_NESTED__NESTED_VALUE_EXPR = QUERY_VALUE_EXPRESSION_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Value Expression Nested</em>' class.
+	 * The number of structural features of the '<em>Value Expression Nested</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -13783,6 +14458,15 @@
 	int ORDER_BY_ORDINAL__LABEL = ORDER_BY_SPECIFICATION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ORDER_BY_ORDINAL__COMMENTS = ORDER_BY_SPECIFICATION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Descending</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -13828,7 +14512,7 @@
 	int ORDER_BY_ORDINAL__ORDINAL_VALUE = ORDER_BY_SPECIFICATION_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Order By Ordinal</em>' class.
+	 * The number of structural features of the '<em>Order By Ordinal</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -13892,6 +14576,15 @@
 	int TABLE_CORRELATION__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int TABLE_CORRELATION__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Expr</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -13910,7 +14603,7 @@
 	int TABLE_CORRELATION__COLUMN_NAME_LIST = SQL_QUERY_OBJECT_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the the '<em>Table Correlation</em>' class.
+	 * The number of structural features of the '<em>Table Correlation</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -13974,6 +14667,15 @@
 	int UPDATE_SOURCE__LABEL = SQL_QUERY_OBJECT__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int UPDATE_SOURCE__COMMENTS = SQL_QUERY_OBJECT__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Update Assignment Expr</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -13983,7 +14685,7 @@
 	int UPDATE_SOURCE__UPDATE_ASSIGNMENT_EXPR = SQL_QUERY_OBJECT_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Update Source</em>' class.
+	 * The number of structural features of the '<em>Update Source</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -14047,6 +14749,15 @@
 	int UPDATE_SOURCE_EXPR_LIST__LABEL = UPDATE_SOURCE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int UPDATE_SOURCE_EXPR_LIST__COMMENTS = UPDATE_SOURCE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Update Assignment Expr</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -14065,7 +14776,7 @@
 	int UPDATE_SOURCE_EXPR_LIST__VALUE_EXPR_LIST = UPDATE_SOURCE_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Update Source Expr List</em>' class.
+	 * The number of structural features of the '<em>Update Source Expr List</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -14129,6 +14840,15 @@
 	int UPDATE_SOURCE_QUERY__LABEL = UPDATE_SOURCE__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int UPDATE_SOURCE_QUERY__COMMENTS = UPDATE_SOURCE__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Update Assignment Expr</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -14147,7 +14867,7 @@
 	int UPDATE_SOURCE_QUERY__QUERY_EXPR = UPDATE_SOURCE_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Update Source Query</em>' class.
+	 * The number of structural features of the '<em>Update Source Query</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -14211,6 +14931,15 @@
 	int ORDER_BY_RESULT_COLUMN__LABEL = ORDER_BY_SPECIFICATION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ORDER_BY_RESULT_COLUMN__COMMENTS = ORDER_BY_SPECIFICATION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Descending</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -14256,7 +14985,7 @@
 	int ORDER_BY_RESULT_COLUMN__RESULT_COL = ORDER_BY_SPECIFICATION_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>Order By Result Column</em>' class.
+	 * The number of structural features of the '<em>Order By Result Column</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -14320,6 +15049,15 @@
 	int WITH_TABLE_REFERENCE__LABEL = TABLE_EXPRESSION__LABEL;
 
 	/**
+	 * The feature id for the '<em><b>Comments</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int WITH_TABLE_REFERENCE__COMMENTS = TABLE_EXPRESSION__COMMENTS;
+
+	/**
 	 * The feature id for the '<em><b>Table Joined Right</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -14401,7 +15139,7 @@
 	int WITH_TABLE_REFERENCE__WITH_TABLE_SPECIFICATION = TABLE_EXPRESSION_FEATURE_COUNT + 0;
 
 	/**
-	 * The number of structural features of the the '<em>With Table Reference</em>' class.
+	 * The number of structural features of the '<em>With Table Reference</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -17802,4 +18540,2653 @@
 	 */
 	SQLQueryModelFactory getSQLQueryModelFactory();
 
+	/**
+	 * <!-- begin-user-doc -->
+	 * Defines literals for the meta objects that represent
+	 * <ul>
+	 *   <li>each class,</li>
+	 *   <li>each feature of each class,</li>
+	 *   <li>each enum,</li>
+	 *   <li>and each data type</li>
+	 * </ul>
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	interface Literals  {
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryStatementImpl <em>Query Statement</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryStatementImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryStatement()
+		 * @generated
+		 */
+		EClass QUERY_STATEMENT = eINSTANCE.getQueryStatement();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryDeleteStatementImpl <em>Query Delete Statement</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryDeleteStatementImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryDeleteStatement()
+		 * @generated
+		 */
+		EClass QUERY_DELETE_STATEMENT = eINSTANCE.getQueryDeleteStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Where Current Of Clause</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_DELETE_STATEMENT__WHERE_CURRENT_OF_CLAUSE = eINSTANCE.getQueryDeleteStatement_WhereCurrentOfClause();
+
+		/**
+		 * The meta object literal for the '<em><b>Where Clause</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_DELETE_STATEMENT__WHERE_CLAUSE = eINSTANCE.getQueryDeleteStatement_WhereClause();
+
+		/**
+		 * The meta object literal for the '<em><b>Target Table</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_DELETE_STATEMENT__TARGET_TABLE = eINSTANCE.getQueryDeleteStatement_TargetTable();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryInsertStatementImpl <em>Query Insert Statement</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryInsertStatementImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryInsertStatement()
+		 * @generated
+		 */
+		EClass QUERY_INSERT_STATEMENT = eINSTANCE.getQueryInsertStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Source Query</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_INSERT_STATEMENT__SOURCE_QUERY = eINSTANCE.getQueryInsertStatement_SourceQuery();
+
+		/**
+		 * The meta object literal for the '<em><b>Source Values Row List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_INSERT_STATEMENT__SOURCE_VALUES_ROW_LIST = eINSTANCE.getQueryInsertStatement_SourceValuesRowList();
+
+		/**
+		 * The meta object literal for the '<em><b>Target Table</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_INSERT_STATEMENT__TARGET_TABLE = eINSTANCE.getQueryInsertStatement_TargetTable();
+
+		/**
+		 * The meta object literal for the '<em><b>Target Column List</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_INSERT_STATEMENT__TARGET_COLUMN_LIST = eINSTANCE.getQueryInsertStatement_TargetColumnList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QuerySelectStatementImpl <em>Query Select Statement</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QuerySelectStatementImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQuerySelectStatement()
+		 * @generated
+		 */
+		EClass QUERY_SELECT_STATEMENT = eINSTANCE.getQuerySelectStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SELECT_STATEMENT__QUERY_EXPR = eINSTANCE.getQuerySelectStatement_QueryExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Order By Clause</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SELECT_STATEMENT__ORDER_BY_CLAUSE = eINSTANCE.getQuerySelectStatement_OrderByClause();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryUpdateStatementImpl <em>Query Update Statement</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryUpdateStatementImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryUpdateStatement()
+		 * @generated
+		 */
+		EClass QUERY_UPDATE_STATEMENT = eINSTANCE.getQueryUpdateStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Assignment Clause</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_UPDATE_STATEMENT__ASSIGNMENT_CLAUSE = eINSTANCE.getQueryUpdateStatement_AssignmentClause();
+
+		/**
+		 * The meta object literal for the '<em><b>Where Current Of Clause</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_UPDATE_STATEMENT__WHERE_CURRENT_OF_CLAUSE = eINSTANCE.getQueryUpdateStatement_WhereCurrentOfClause();
+
+		/**
+		 * The meta object literal for the '<em><b>Where Clause</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_UPDATE_STATEMENT__WHERE_CLAUSE = eINSTANCE.getQueryUpdateStatement_WhereClause();
+
+		/**
+		 * The meta object literal for the '<em><b>Target Table</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_UPDATE_STATEMENT__TARGET_TABLE = eINSTANCE.getQueryUpdateStatement_TargetTable();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.UpdateAssignmentExpressionImpl <em>Update Assignment Expression</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.UpdateAssignmentExpressionImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getUpdateAssignmentExpression()
+		 * @generated
+		 */
+		EClass UPDATE_ASSIGNMENT_EXPRESSION = eINSTANCE.getUpdateAssignmentExpression();
+
+		/**
+		 * The meta object literal for the '<em><b>Update Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference UPDATE_ASSIGNMENT_EXPRESSION__UPDATE_STATEMENT = eINSTANCE.getUpdateAssignmentExpression_UpdateStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Target Column List</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference UPDATE_ASSIGNMENT_EXPRESSION__TARGET_COLUMN_LIST = eINSTANCE.getUpdateAssignmentExpression_TargetColumnList();
+
+		/**
+		 * The meta object literal for the '<em><b>Update Source</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference UPDATE_ASSIGNMENT_EXPRESSION__UPDATE_SOURCE = eINSTANCE.getUpdateAssignmentExpression_UpdateSource();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.CursorReferenceImpl <em>Cursor Reference</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.CursorReferenceImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getCursorReference()
+		 * @generated
+		 */
+		EClass CURSOR_REFERENCE = eINSTANCE.getCursorReference();
+
+		/**
+		 * The meta object literal for the '<em><b>Update Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CURSOR_REFERENCE__UPDATE_STATEMENT = eINSTANCE.getCursorReference_UpdateStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Delete Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CURSOR_REFERENCE__DELETE_STATEMENT = eINSTANCE.getCursorReference_DeleteStatement();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QuerySearchConditionImpl <em>Query Search Condition</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QuerySearchConditionImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQuerySearchCondition()
+		 * @generated
+		 */
+		EClass QUERY_SEARCH_CONDITION = eINSTANCE.getQuerySearchCondition();
+
+		/**
+		 * The meta object literal for the '<em><b>Negated Condition</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute QUERY_SEARCH_CONDITION__NEGATED_CONDITION = eINSTANCE.getQuerySearchCondition_NegatedCondition();
+
+		/**
+		 * The meta object literal for the '<em><b>Update Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SEARCH_CONDITION__UPDATE_STATEMENT = eINSTANCE.getQuerySearchCondition_UpdateStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Delete Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SEARCH_CONDITION__DELETE_STATEMENT = eINSTANCE.getQuerySearchCondition_DeleteStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Table Joined</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SEARCH_CONDITION__TABLE_JOINED = eINSTANCE.getQuerySearchCondition_TableJoined();
+
+		/**
+		 * The meta object literal for the '<em><b>Combined Left</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SEARCH_CONDITION__COMBINED_LEFT = eINSTANCE.getQuerySearchCondition_CombinedLeft();
+
+		/**
+		 * The meta object literal for the '<em><b>Combined Right</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SEARCH_CONDITION__COMBINED_RIGHT = eINSTANCE.getQuerySearchCondition_CombinedRight();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Select Having</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SEARCH_CONDITION__QUERY_SELECT_HAVING = eINSTANCE.getQuerySearchCondition_QuerySelectHaving();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Select Where</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SEARCH_CONDITION__QUERY_SELECT_WHERE = eINSTANCE.getQuerySearchCondition_QuerySelectWhere();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Case Search Content</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SEARCH_CONDITION__VALUE_EXPR_CASE_SEARCH_CONTENT = eINSTANCE.getQuerySearchCondition_ValueExprCaseSearchContent();
+
+		/**
+		 * The meta object literal for the '<em><b>Nest</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SEARCH_CONDITION__NEST = eINSTANCE.getQuerySearchCondition_Nest();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryExpressionBodyImpl <em>Query Expression Body</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryExpressionBodyImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryExpressionBody()
+		 * @generated
+		 */
+		EClass QUERY_EXPRESSION_BODY = eINSTANCE.getQueryExpressionBody();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Expression</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_BODY__QUERY_EXPRESSION = eINSTANCE.getQueryExpressionBody_QueryExpression();
+
+		/**
+		 * The meta object literal for the '<em><b>Combined Left</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_BODY__COMBINED_LEFT = eINSTANCE.getQueryExpressionBody_CombinedLeft();
+
+		/**
+		 * The meta object literal for the '<em><b>Combined Right</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_BODY__COMBINED_RIGHT = eINSTANCE.getQueryExpressionBody_CombinedRight();
+
+		/**
+		 * The meta object literal for the '<em><b>Predicate Exists</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_BODY__PREDICATE_EXISTS = eINSTANCE.getQueryExpressionBody_PredicateExists();
+
+		/**
+		 * The meta object literal for the '<em><b>Update Source Query</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_BODY__UPDATE_SOURCE_QUERY = eINSTANCE.getQueryExpressionBody_UpdateSourceQuery();
+
+		/**
+		 * The meta object literal for the '<em><b>With Table Specification</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_BODY__WITH_TABLE_SPECIFICATION = eINSTANCE.getQueryExpressionBody_WithTableSpecification();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryValueExpressionImpl <em>Query Value Expression</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryValueExpressionImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryValueExpression()
+		 * @generated
+		 */
+		EClass QUERY_VALUE_EXPRESSION = eINSTANCE.getQueryValueExpression();
+
+		/**
+		 * The meta object literal for the '<em><b>Unary Operator</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute QUERY_VALUE_EXPRESSION__UNARY_OPERATOR = eINSTANCE.getQueryValueExpression_UnaryOperator();
+
+		/**
+		 * The meta object literal for the '<em><b>Data Type</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__DATA_TYPE = eINSTANCE.getQueryValueExpression_DataType();
+
+		/**
+		 * The meta object literal for the '<em><b>Values Row</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__VALUES_ROW = eINSTANCE.getQueryValueExpression_ValuesRow();
+
+		/**
+		 * The meta object literal for the '<em><b>Order By Value Expr</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__ORDER_BY_VALUE_EXPR = eINSTANCE.getQueryValueExpression_OrderByValueExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Result Column</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__RESULT_COLUMN = eINSTANCE.getQueryValueExpression_ResultColumn();
+
+		/**
+		 * The meta object literal for the '<em><b>Basic Right</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__BASIC_RIGHT = eINSTANCE.getQueryValueExpression_BasicRight();
+
+		/**
+		 * The meta object literal for the '<em><b>Basic Left</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__BASIC_LEFT = eINSTANCE.getQueryValueExpression_BasicLeft();
+
+		/**
+		 * The meta object literal for the '<em><b>Like Pattern</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__LIKE_PATTERN = eINSTANCE.getQueryValueExpression_LikePattern();
+
+		/**
+		 * The meta object literal for the '<em><b>Like Matching</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__LIKE_MATCHING = eINSTANCE.getQueryValueExpression_LikeMatching();
+
+		/**
+		 * The meta object literal for the '<em><b>Predicate Null</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__PREDICATE_NULL = eINSTANCE.getQueryValueExpression_PredicateNull();
+
+		/**
+		 * The meta object literal for the '<em><b>In Value List Right</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__IN_VALUE_LIST_RIGHT = eINSTANCE.getQueryValueExpression_InValueListRight();
+
+		/**
+		 * The meta object literal for the '<em><b>In Value List Left</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__IN_VALUE_LIST_LEFT = eINSTANCE.getQueryValueExpression_InValueListLeft();
+
+		/**
+		 * The meta object literal for the '<em><b>In Value Row Select Left</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__IN_VALUE_ROW_SELECT_LEFT = eINSTANCE.getQueryValueExpression_InValueRowSelectLeft();
+
+		/**
+		 * The meta object literal for the '<em><b>In Value Select Left</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__IN_VALUE_SELECT_LEFT = eINSTANCE.getQueryValueExpression_InValueSelectLeft();
+
+		/**
+		 * The meta object literal for the '<em><b>Quantified Row Select Left</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__QUANTIFIED_ROW_SELECT_LEFT = eINSTANCE.getQueryValueExpression_QuantifiedRowSelectLeft();
+
+		/**
+		 * The meta object literal for the '<em><b>Quantified Value Select Left</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__QUANTIFIED_VALUE_SELECT_LEFT = eINSTANCE.getQueryValueExpression_QuantifiedValueSelectLeft();
+
+		/**
+		 * The meta object literal for the '<em><b>Between Left</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__BETWEEN_LEFT = eINSTANCE.getQueryValueExpression_BetweenLeft();
+
+		/**
+		 * The meta object literal for the '<em><b>Between Right1</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__BETWEEN_RIGHT1 = eINSTANCE.getQueryValueExpression_BetweenRight1();
+
+		/**
+		 * The meta object literal for the '<em><b>Between Right2</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__BETWEEN_RIGHT2 = eINSTANCE.getQueryValueExpression_BetweenRight2();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Cast</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__VALUE_EXPR_CAST = eINSTANCE.getQueryValueExpression_ValueExprCast();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Function</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__VALUE_EXPR_FUNCTION = eINSTANCE.getQueryValueExpression_ValueExprFunction();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Combined Left</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__VALUE_EXPR_COMBINED_LEFT = eINSTANCE.getQueryValueExpression_ValueExprCombinedLeft();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Combined Right</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__VALUE_EXPR_COMBINED_RIGHT = eINSTANCE.getQueryValueExpression_ValueExprCombinedRight();
+
+		/**
+		 * The meta object literal for the '<em><b>Grouping Expr</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__GROUPING_EXPR = eINSTANCE.getQueryValueExpression_GroupingExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Case Else</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__VALUE_EXPR_CASE_ELSE = eINSTANCE.getQueryValueExpression_ValueExprCaseElse();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Case Simple</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__VALUE_EXPR_CASE_SIMPLE = eINSTANCE.getQueryValueExpression_ValueExprCaseSimple();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Case Simple Content When</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__VALUE_EXPR_CASE_SIMPLE_CONTENT_WHEN = eINSTANCE.getQueryValueExpression_ValueExprCaseSimpleContentWhen();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Case Simple Content Result</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__VALUE_EXPR_CASE_SIMPLE_CONTENT_RESULT = eINSTANCE.getQueryValueExpression_ValueExprCaseSimpleContentResult();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Case Search Content</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__VALUE_EXPR_CASE_SEARCH_CONTENT = eINSTANCE.getQueryValueExpression_ValueExprCaseSearchContent();
+
+		/**
+		 * The meta object literal for the '<em><b>Like Escape</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__LIKE_ESCAPE = eINSTANCE.getQueryValueExpression_LikeEscape();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Labeled Duration</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__VALUE_EXPR_LABELED_DURATION = eINSTANCE.getQueryValueExpression_ValueExprLabeledDuration();
+
+		/**
+		 * The meta object literal for the '<em><b>Nest</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__NEST = eINSTANCE.getQueryValueExpression_Nest();
+
+		/**
+		 * The meta object literal for the '<em><b>Update Source Expr List</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUE_EXPRESSION__UPDATE_SOURCE_EXPR_LIST = eINSTANCE.getQueryValueExpression_UpdateSourceExprList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryExpressionRootImpl <em>Query Expression Root</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryExpressionRootImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryExpressionRoot()
+		 * @generated
+		 */
+		EClass QUERY_EXPRESSION_ROOT = eINSTANCE.getQueryExpressionRoot();
+
+		/**
+		 * The meta object literal for the '<em><b>Insert Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_ROOT__INSERT_STATEMENT = eINSTANCE.getQueryExpressionRoot_InsertStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Select Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_ROOT__SELECT_STATEMENT = eINSTANCE.getQueryExpressionRoot_SelectStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>With Clause</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_ROOT__WITH_CLAUSE = eINSTANCE.getQueryExpressionRoot_WithClause();
+
+		/**
+		 * The meta object literal for the '<em><b>Query</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_ROOT__QUERY = eINSTANCE.getQueryExpressionRoot_Query();
+
+		/**
+		 * The meta object literal for the '<em><b>In Value Row Select Right</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_ROOT__IN_VALUE_ROW_SELECT_RIGHT = eINSTANCE.getQueryExpressionRoot_InValueRowSelectRight();
+
+		/**
+		 * The meta object literal for the '<em><b>In Value Select Right</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_ROOT__IN_VALUE_SELECT_RIGHT = eINSTANCE.getQueryExpressionRoot_InValueSelectRight();
+
+		/**
+		 * The meta object literal for the '<em><b>Quantified Row Select Right</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_ROOT__QUANTIFIED_ROW_SELECT_RIGHT = eINSTANCE.getQueryExpressionRoot_QuantifiedRowSelectRight();
+
+		/**
+		 * The meta object literal for the '<em><b>Quantified Value Select Right</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_ROOT__QUANTIFIED_VALUE_SELECT_RIGHT = eINSTANCE.getQueryExpressionRoot_QuantifiedValueSelectRight();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Scalar Selects</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_EXPRESSION_ROOT__VALUE_EXPR_SCALAR_SELECTS = eINSTANCE.getQueryExpressionRoot_ValueExprScalarSelects();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValuesRowImpl <em>Values Row</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValuesRowImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValuesRow()
+		 * @generated
+		 */
+		EClass VALUES_ROW = eINSTANCE.getValuesRow();
+
+		/**
+		 * The meta object literal for the '<em><b>Insert Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUES_ROW__INSERT_STATEMENT = eINSTANCE.getValuesRow_InsertStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Expr List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUES_ROW__EXPR_LIST = eINSTANCE.getValuesRow_ExprList();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Values</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUES_ROW__QUERY_VALUES = eINSTANCE.getValuesRow_QueryValues();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryValuesImpl <em>Query Values</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryValuesImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryValues()
+		 * @generated
+		 */
+		EClass QUERY_VALUES = eINSTANCE.getQueryValues();
+
+		/**
+		 * The meta object literal for the '<em><b>Values Row List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_VALUES__VALUES_ROW_LIST = eINSTANCE.getQueryValues_ValuesRowList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.TableReferenceImpl <em>Table Reference</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.TableReferenceImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getTableReference()
+		 * @generated
+		 */
+		EClass TABLE_REFERENCE = eINSTANCE.getTableReference();
+
+		/**
+		 * The meta object literal for the '<em><b>Table Joined Right</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_REFERENCE__TABLE_JOINED_RIGHT = eINSTANCE.getTableReference_TableJoinedRight();
+
+		/**
+		 * The meta object literal for the '<em><b>Table Joined Left</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_REFERENCE__TABLE_JOINED_LEFT = eINSTANCE.getTableReference_TableJoinedLeft();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Select</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_REFERENCE__QUERY_SELECT = eINSTANCE.getTableReference_QuerySelect();
+
+		/**
+		 * The meta object literal for the '<em><b>Nest</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_REFERENCE__NEST = eINSTANCE.getTableReference_Nest();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.TableExpressionImpl <em>Table Expression</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.TableExpressionImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getTableExpression()
+		 * @generated
+		 */
+		EClass TABLE_EXPRESSION = eINSTANCE.getTableExpression();
+
+		/**
+		 * The meta object literal for the '<em><b>Column List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_EXPRESSION__COLUMN_LIST = eINSTANCE.getTableExpression_ColumnList();
+
+		/**
+		 * The meta object literal for the '<em><b>Table Correlation</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_EXPRESSION__TABLE_CORRELATION = eINSTANCE.getTableExpression_TableCorrelation();
+
+		/**
+		 * The meta object literal for the '<em><b>Result Table All Columns</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_EXPRESSION__RESULT_TABLE_ALL_COLUMNS = eINSTANCE.getTableExpression_ResultTableAllColumns();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Columns</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_EXPRESSION__VALUE_EXPR_COLUMNS = eINSTANCE.getTableExpression_ValueExprColumns();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.TableJoinedImpl <em>Table Joined</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.TableJoinedImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getTableJoined()
+		 * @generated
+		 */
+		EClass TABLE_JOINED = eINSTANCE.getTableJoined();
+
+		/**
+		 * The meta object literal for the '<em><b>Join Operator</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute TABLE_JOINED__JOIN_OPERATOR = eINSTANCE.getTableJoined_JoinOperator();
+
+		/**
+		 * The meta object literal for the '<em><b>Join Condition</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_JOINED__JOIN_CONDITION = eINSTANCE.getTableJoined_JoinCondition();
+
+		/**
+		 * The meta object literal for the '<em><b>Table Ref Right</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_JOINED__TABLE_REF_RIGHT = eINSTANCE.getTableJoined_TableRefRight();
+
+		/**
+		 * The meta object literal for the '<em><b>Table Ref Left</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_JOINED__TABLE_REF_LEFT = eINSTANCE.getTableJoined_TableRefLeft();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.WithTableSpecificationImpl <em>With Table Specification</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.WithTableSpecificationImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getWithTableSpecification()
+		 * @generated
+		 */
+		EClass WITH_TABLE_SPECIFICATION = eINSTANCE.getWithTableSpecification();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Expression Root</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference WITH_TABLE_SPECIFICATION__QUERY_EXPRESSION_ROOT = eINSTANCE.getWithTableSpecification_QueryExpressionRoot();
+
+		/**
+		 * The meta object literal for the '<em><b>With Table Query Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference WITH_TABLE_SPECIFICATION__WITH_TABLE_QUERY_EXPR = eINSTANCE.getWithTableSpecification_WithTableQueryExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>With Table References</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference WITH_TABLE_SPECIFICATION__WITH_TABLE_REFERENCES = eINSTANCE.getWithTableSpecification_WithTableReferences();
+
+		/**
+		 * The meta object literal for the '<em><b>Column Name List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference WITH_TABLE_SPECIFICATION__COLUMN_NAME_LIST = eINSTANCE.getWithTableSpecification_ColumnNameList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateImpl <em>Predicate</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicate()
+		 * @generated
+		 */
+		EClass PREDICATE = eINSTANCE.getPredicate();
+
+		/**
+		 * The meta object literal for the '<em><b>Negated Predicate</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PREDICATE__NEGATED_PREDICATE = eINSTANCE.getPredicate_NegatedPredicate();
+
+		/**
+		 * The meta object literal for the '<em><b>Has Selectivity</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PREDICATE__HAS_SELECTIVITY = eINSTANCE.getPredicate_HasSelectivity();
+
+		/**
+		 * The meta object literal for the '<em><b>Selectivity Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PREDICATE__SELECTIVITY_VALUE = eINSTANCE.getPredicate_SelectivityValue();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.SearchConditionCombinedImpl <em>Search Condition Combined</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SearchConditionCombinedImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getSearchConditionCombined()
+		 * @generated
+		 */
+		EClass SEARCH_CONDITION_COMBINED = eINSTANCE.getSearchConditionCombined();
+
+		/**
+		 * The meta object literal for the '<em><b>Combined Operator</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute SEARCH_CONDITION_COMBINED__COMBINED_OPERATOR = eINSTANCE.getSearchConditionCombined_CombinedOperator();
+
+		/**
+		 * The meta object literal for the '<em><b>Left Condition</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SEARCH_CONDITION_COMBINED__LEFT_CONDITION = eINSTANCE.getSearchConditionCombined_LeftCondition();
+
+		/**
+		 * The meta object literal for the '<em><b>Right Condition</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SEARCH_CONDITION_COMBINED__RIGHT_CONDITION = eINSTANCE.getSearchConditionCombined_RightCondition();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.OrderByValueExpressionImpl <em>Order By Value Expression</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.OrderByValueExpressionImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getOrderByValueExpression()
+		 * @generated
+		 */
+		EClass ORDER_BY_VALUE_EXPRESSION = eINSTANCE.getOrderByValueExpression();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR = eINSTANCE.getOrderByValueExpression_ValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryCombinedImpl <em>Query Combined</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryCombinedImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryCombined()
+		 * @generated
+		 */
+		EClass QUERY_COMBINED = eINSTANCE.getQueryCombined();
+
+		/**
+		 * The meta object literal for the '<em><b>Combined Operator</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute QUERY_COMBINED__COMBINED_OPERATOR = eINSTANCE.getQueryCombined_CombinedOperator();
+
+		/**
+		 * The meta object literal for the '<em><b>Left Query</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_COMBINED__LEFT_QUERY = eINSTANCE.getQueryCombined_LeftQuery();
+
+		/**
+		 * The meta object literal for the '<em><b>Right Query</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_COMBINED__RIGHT_QUERY = eINSTANCE.getQueryCombined_RightQuery();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QuerySelectImpl <em>Query Select</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QuerySelectImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQuerySelect()
+		 * @generated
+		 */
+		EClass QUERY_SELECT = eINSTANCE.getQuerySelect();
+
+		/**
+		 * The meta object literal for the '<em><b>Distinct</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute QUERY_SELECT__DISTINCT = eINSTANCE.getQuerySelect_Distinct();
+
+		/**
+		 * The meta object literal for the '<em><b>Having Clause</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SELECT__HAVING_CLAUSE = eINSTANCE.getQuerySelect_HavingClause();
+
+		/**
+		 * The meta object literal for the '<em><b>Where Clause</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SELECT__WHERE_CLAUSE = eINSTANCE.getQuerySelect_WhereClause();
+
+		/**
+		 * The meta object literal for the '<em><b>Group By Clause</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SELECT__GROUP_BY_CLAUSE = eINSTANCE.getQuerySelect_GroupByClause();
+
+		/**
+		 * The meta object literal for the '<em><b>Select Clause</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SELECT__SELECT_CLAUSE = eINSTANCE.getQuerySelect_SelectClause();
+
+		/**
+		 * The meta object literal for the '<em><b>From Clause</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SELECT__FROM_CLAUSE = eINSTANCE.getQuerySelect_FromClause();
+
+		/**
+		 * The meta object literal for the '<em><b>Into Clause</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_SELECT__INTO_CLAUSE = eINSTANCE.getQuerySelect_IntoClause();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.GroupingSpecificationImpl <em>Grouping Specification</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.GroupingSpecificationImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getGroupingSpecification()
+		 * @generated
+		 */
+		EClass GROUPING_SPECIFICATION = eINSTANCE.getGroupingSpecification();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Select</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference GROUPING_SPECIFICATION__QUERY_SELECT = eINSTANCE.getGroupingSpecification_QuerySelect();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryResultSpecificationImpl <em>Query Result Specification</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryResultSpecificationImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryResultSpecification()
+		 * @generated
+		 */
+		EClass QUERY_RESULT_SPECIFICATION = eINSTANCE.getQueryResultSpecification();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Select</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUERY_RESULT_SPECIFICATION__QUERY_SELECT = eINSTANCE.getQueryResultSpecification_QuerySelect();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ResultTableAllColumnsImpl <em>Result Table All Columns</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ResultTableAllColumnsImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getResultTableAllColumns()
+		 * @generated
+		 */
+		EClass RESULT_TABLE_ALL_COLUMNS = eINSTANCE.getResultTableAllColumns();
+
+		/**
+		 * The meta object literal for the '<em><b>Table Expr</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference RESULT_TABLE_ALL_COLUMNS__TABLE_EXPR = eINSTANCE.getResultTableAllColumns_TableExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ResultColumnImpl <em>Result Column</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ResultColumnImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getResultColumn()
+		 * @generated
+		 */
+		EClass RESULT_COLUMN = eINSTANCE.getResultColumn();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference RESULT_COLUMN__VALUE_EXPR = eINSTANCE.getResultColumn_ValueExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Order By Result Col</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference RESULT_COLUMN__ORDER_BY_RESULT_COL = eINSTANCE.getResultColumn_OrderByResultCol();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateBasicImpl <em>Predicate Basic</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateBasicImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateBasic()
+		 * @generated
+		 */
+		EClass PREDICATE_BASIC = eINSTANCE.getPredicateBasic();
+
+		/**
+		 * The meta object literal for the '<em><b>Comparison Operator</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PREDICATE_BASIC__COMPARISON_OPERATOR = eINSTANCE.getPredicateBasic_ComparisonOperator();
+
+		/**
+		 * The meta object literal for the '<em><b>Right Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_BASIC__RIGHT_VALUE_EXPR = eINSTANCE.getPredicateBasic_RightValueExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Left Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_BASIC__LEFT_VALUE_EXPR = eINSTANCE.getPredicateBasic_LeftValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateQuantifiedImpl <em>Predicate Quantified</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateQuantifiedImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateQuantified()
+		 * @generated
+		 */
+		EClass PREDICATE_QUANTIFIED = eINSTANCE.getPredicateQuantified();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateBetweenImpl <em>Predicate Between</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateBetweenImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateBetween()
+		 * @generated
+		 */
+		EClass PREDICATE_BETWEEN = eINSTANCE.getPredicateBetween();
+
+		/**
+		 * The meta object literal for the '<em><b>Not Between</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PREDICATE_BETWEEN__NOT_BETWEEN = eINSTANCE.getPredicateBetween_NotBetween();
+
+		/**
+		 * The meta object literal for the '<em><b>Left Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_BETWEEN__LEFT_VALUE_EXPR = eINSTANCE.getPredicateBetween_LeftValueExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Right Value Expr1</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_BETWEEN__RIGHT_VALUE_EXPR1 = eINSTANCE.getPredicateBetween_RightValueExpr1();
+
+		/**
+		 * The meta object literal for the '<em><b>Right Value Expr2</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_BETWEEN__RIGHT_VALUE_EXPR2 = eINSTANCE.getPredicateBetween_RightValueExpr2();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateExistsImpl <em>Predicate Exists</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateExistsImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateExists()
+		 * @generated
+		 */
+		EClass PREDICATE_EXISTS = eINSTANCE.getPredicateExists();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_EXISTS__QUERY_EXPR = eINSTANCE.getPredicateExists_QueryExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateInImpl <em>Predicate In</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateInImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateIn()
+		 * @generated
+		 */
+		EClass PREDICATE_IN = eINSTANCE.getPredicateIn();
+
+		/**
+		 * The meta object literal for the '<em><b>Not In</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PREDICATE_IN__NOT_IN = eINSTANCE.getPredicateIn_NotIn();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateLikeImpl <em>Predicate Like</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateLikeImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateLike()
+		 * @generated
+		 */
+		EClass PREDICATE_LIKE = eINSTANCE.getPredicateLike();
+
+		/**
+		 * The meta object literal for the '<em><b>Not Like</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PREDICATE_LIKE__NOT_LIKE = eINSTANCE.getPredicateLike_NotLike();
+
+		/**
+		 * The meta object literal for the '<em><b>Pattern Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_LIKE__PATTERN_VALUE_EXPR = eINSTANCE.getPredicateLike_PatternValueExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Matching Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_LIKE__MATCHING_VALUE_EXPR = eINSTANCE.getPredicateLike_MatchingValueExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Escape Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_LIKE__ESCAPE_VALUE_EXPR = eINSTANCE.getPredicateLike_EscapeValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateIsNullImpl <em>Predicate Is Null</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateIsNullImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateIsNull()
+		 * @generated
+		 */
+		EClass PREDICATE_IS_NULL = eINSTANCE.getPredicateIsNull();
+
+		/**
+		 * The meta object literal for the '<em><b>Not Null</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PREDICATE_IS_NULL__NOT_NULL = eINSTANCE.getPredicateIsNull_NotNull();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_IS_NULL__VALUE_EXPR = eINSTANCE.getPredicateIsNull_ValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateQuantifiedValueSelectImpl <em>Predicate Quantified Value Select</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateQuantifiedValueSelectImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateQuantifiedValueSelect()
+		 * @generated
+		 */
+		EClass PREDICATE_QUANTIFIED_VALUE_SELECT = eINSTANCE.getPredicateQuantifiedValueSelect();
+
+		/**
+		 * The meta object literal for the '<em><b>Quantified Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PREDICATE_QUANTIFIED_VALUE_SELECT__QUANTIFIED_TYPE = eINSTANCE.getPredicateQuantifiedValueSelect_QuantifiedType();
+
+		/**
+		 * The meta object literal for the '<em><b>Comparison Operator</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PREDICATE_QUANTIFIED_VALUE_SELECT__COMPARISON_OPERATOR = eINSTANCE.getPredicateQuantifiedValueSelect_ComparisonOperator();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_QUANTIFIED_VALUE_SELECT__QUERY_EXPR = eINSTANCE.getPredicateQuantifiedValueSelect_QueryExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_QUANTIFIED_VALUE_SELECT__VALUE_EXPR = eINSTANCE.getPredicateQuantifiedValueSelect_ValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateQuantifiedRowSelectImpl <em>Predicate Quantified Row Select</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateQuantifiedRowSelectImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateQuantifiedRowSelect()
+		 * @generated
+		 */
+		EClass PREDICATE_QUANTIFIED_ROW_SELECT = eINSTANCE.getPredicateQuantifiedRowSelect();
+
+		/**
+		 * The meta object literal for the '<em><b>Quantified Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PREDICATE_QUANTIFIED_ROW_SELECT__QUANTIFIED_TYPE = eINSTANCE.getPredicateQuantifiedRowSelect_QuantifiedType();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_QUANTIFIED_ROW_SELECT__QUERY_EXPR = eINSTANCE.getPredicateQuantifiedRowSelect_QueryExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_QUANTIFIED_ROW_SELECT__VALUE_EXPR_LIST = eINSTANCE.getPredicateQuantifiedRowSelect_ValueExprList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateInValueSelectImpl <em>Predicate In Value Select</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateInValueSelectImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateInValueSelect()
+		 * @generated
+		 */
+		EClass PREDICATE_IN_VALUE_SELECT = eINSTANCE.getPredicateInValueSelect();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_IN_VALUE_SELECT__QUERY_EXPR = eINSTANCE.getPredicateInValueSelect_QueryExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_IN_VALUE_SELECT__VALUE_EXPR = eINSTANCE.getPredicateInValueSelect_ValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateInValueListImpl <em>Predicate In Value List</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateInValueListImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateInValueList()
+		 * @generated
+		 */
+		EClass PREDICATE_IN_VALUE_LIST = eINSTANCE.getPredicateInValueList();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_IN_VALUE_LIST__VALUE_EXPR_LIST = eINSTANCE.getPredicateInValueList_ValueExprList();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_IN_VALUE_LIST__VALUE_EXPR = eINSTANCE.getPredicateInValueList_ValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.PredicateInValueRowSelectImpl <em>Predicate In Value Row Select</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.PredicateInValueRowSelectImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateInValueRowSelect()
+		 * @generated
+		 */
+		EClass PREDICATE_IN_VALUE_ROW_SELECT = eINSTANCE.getPredicateInValueRowSelect();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_LIST = eINSTANCE.getPredicateInValueRowSelect_ValueExprList();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PREDICATE_IN_VALUE_ROW_SELECT__QUERY_EXPR = eINSTANCE.getPredicateInValueRowSelect_QueryExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionSimpleImpl <em>Value Expression Simple</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionSimpleImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionSimple()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_SIMPLE = eINSTANCE.getValueExpressionSimple();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute VALUE_EXPRESSION_SIMPLE__VALUE = eINSTANCE.getValueExpressionSimple_Value();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionColumnImpl <em>Value Expression Column</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionColumnImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionColumn()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_COLUMN = eINSTANCE.getValueExpressionColumn();
+
+		/**
+		 * The meta object literal for the '<em><b>Assignment Expr Target</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_COLUMN__ASSIGNMENT_EXPR_TARGET = eINSTANCE.getValueExpressionColumn_AssignmentExprTarget();
+
+		/**
+		 * The meta object literal for the '<em><b>Parent Table Expr</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_COLUMN__PARENT_TABLE_EXPR = eINSTANCE.getValueExpressionColumn_ParentTableExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Insert Statement</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_COLUMN__INSERT_STATEMENT = eINSTANCE.getValueExpressionColumn_InsertStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Table Expr</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_COLUMN__TABLE_EXPR = eINSTANCE.getValueExpressionColumn_TableExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Table In Database</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_COLUMN__TABLE_IN_DATABASE = eINSTANCE.getValueExpressionColumn_TableInDatabase();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionVariableImpl <em>Value Expression Variable</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionVariableImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionVariable()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_VARIABLE = eINSTANCE.getValueExpressionVariable();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Select</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_VARIABLE__QUERY_SELECT = eINSTANCE.getValueExpressionVariable_QuerySelect();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionScalarSelectImpl <em>Value Expression Scalar Select</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionScalarSelectImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionScalarSelect()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_SCALAR_SELECT = eINSTANCE.getValueExpressionScalarSelect();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Expr</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_SCALAR_SELECT__QUERY_EXPR = eINSTANCE.getValueExpressionScalarSelect_QueryExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionLabeledDurationImpl <em>Value Expression Labeled Duration</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionLabeledDurationImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionLabeledDuration()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_LABELED_DURATION = eINSTANCE.getValueExpressionLabeledDuration();
+
+		/**
+		 * The meta object literal for the '<em><b>Labeled Duration Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute VALUE_EXPRESSION_LABELED_DURATION__LABELED_DURATION_TYPE = eINSTANCE.getValueExpressionLabeledDuration_LabeledDurationType();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_LABELED_DURATION__VALUE_EXPR = eINSTANCE.getValueExpressionLabeledDuration_ValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseImpl <em>Value Expression Case</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionCase()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_CASE = eINSTANCE.getValueExpressionCase();
+
+		/**
+		 * The meta object literal for the '<em><b>Case Else</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE__CASE_ELSE = eINSTANCE.getValueExpressionCase_CaseElse();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCastImpl <em>Value Expression Cast</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCastImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionCast()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_CAST = eINSTANCE.getValueExpressionCast();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CAST__VALUE_EXPR = eINSTANCE.getValueExpressionCast_ValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionNullValueImpl <em>Value Expression Null Value</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionNullValueImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionNullValue()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_NULL_VALUE = eINSTANCE.getValueExpressionNullValue();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionDefaultValueImpl <em>Value Expression Default Value</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionDefaultValueImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionDefaultValue()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_DEFAULT_VALUE = eINSTANCE.getValueExpressionDefaultValue();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionFunctionImpl <em>Value Expression Function</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionFunctionImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionFunction()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_FUNCTION = eINSTANCE.getValueExpressionFunction();
+
+		/**
+		 * The meta object literal for the '<em><b>Special Register</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute VALUE_EXPRESSION_FUNCTION__SPECIAL_REGISTER = eINSTANCE.getValueExpressionFunction_SpecialRegister();
+
+		/**
+		 * The meta object literal for the '<em><b>Distinct</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute VALUE_EXPRESSION_FUNCTION__DISTINCT = eINSTANCE.getValueExpressionFunction_Distinct();
+
+		/**
+		 * The meta object literal for the '<em><b>Column Function</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute VALUE_EXPRESSION_FUNCTION__COLUMN_FUNCTION = eINSTANCE.getValueExpressionFunction_ColumnFunction();
+
+		/**
+		 * The meta object literal for the '<em><b>Parameter List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_FUNCTION__PARAMETER_LIST = eINSTANCE.getValueExpressionFunction_ParameterList();
+
+		/**
+		 * The meta object literal for the '<em><b>Function</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_FUNCTION__FUNCTION = eINSTANCE.getValueExpressionFunction_Function();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCombinedImpl <em>Value Expression Combined</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCombinedImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionCombined()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_COMBINED = eINSTANCE.getValueExpressionCombined();
+
+		/**
+		 * The meta object literal for the '<em><b>Combined Operator</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute VALUE_EXPRESSION_COMBINED__COMBINED_OPERATOR = eINSTANCE.getValueExpressionCombined_CombinedOperator();
+
+		/**
+		 * The meta object literal for the '<em><b>Left Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_COMBINED__LEFT_VALUE_EXPR = eINSTANCE.getValueExpressionCombined_LeftValueExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Right Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_COMBINED__RIGHT_VALUE_EXPR = eINSTANCE.getValueExpressionCombined_RightValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.GroupingSetsImpl <em>Grouping Sets</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.GroupingSetsImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getGroupingSets()
+		 * @generated
+		 */
+		EClass GROUPING_SETS = eINSTANCE.getGroupingSets();
+
+		/**
+		 * The meta object literal for the '<em><b>Grouping Sets Element List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST = eINSTANCE.getGroupingSets_GroupingSetsElementList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.GroupingImpl <em>Grouping</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.GroupingImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getGrouping()
+		 * @generated
+		 */
+		EClass GROUPING = eINSTANCE.getGrouping();
+
+		/**
+		 * The meta object literal for the '<em><b>Grouping Sets Element Expr</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference GROUPING__GROUPING_SETS_ELEMENT_EXPR = eINSTANCE.getGrouping_GroupingSetsElementExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.GroupingSetsElementImpl <em>Grouping Sets Element</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.GroupingSetsElementImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getGroupingSetsElement()
+		 * @generated
+		 */
+		EClass GROUPING_SETS_ELEMENT = eINSTANCE.getGroupingSetsElement();
+
+		/**
+		 * The meta object literal for the '<em><b>Grouping Sets</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference GROUPING_SETS_ELEMENT__GROUPING_SETS = eINSTANCE.getGroupingSetsElement_GroupingSets();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.GroupingSetsElementSublistImpl <em>Grouping Sets Element Sublist</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.GroupingSetsElementSublistImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getGroupingSetsElementSublist()
+		 * @generated
+		 */
+		EClass GROUPING_SETS_ELEMENT_SUBLIST = eINSTANCE.getGroupingSetsElementSublist();
+
+		/**
+		 * The meta object literal for the '<em><b>Grouping Sets Element Expr List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST = eINSTANCE.getGroupingSetsElementSublist_GroupingSetsElementExprList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.GroupingSetsElementExpressionImpl <em>Grouping Sets Element Expression</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.GroupingSetsElementExpressionImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getGroupingSetsElementExpression()
+		 * @generated
+		 */
+		EClass GROUPING_SETS_ELEMENT_EXPRESSION = eINSTANCE.getGroupingSetsElementExpression();
+
+		/**
+		 * The meta object literal for the '<em><b>Grouping Sets Element Sublist</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST = eINSTANCE.getGroupingSetsElementExpression_GroupingSetsElementSublist();
+
+		/**
+		 * The meta object literal for the '<em><b>Grouping</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING = eINSTANCE.getGroupingSetsElementExpression_Grouping();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.SuperGroupImpl <em>Super Group</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SuperGroupImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getSuperGroup()
+		 * @generated
+		 */
+		EClass SUPER_GROUP = eINSTANCE.getSuperGroup();
+
+		/**
+		 * The meta object literal for the '<em><b>Super Group Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute SUPER_GROUP__SUPER_GROUP_TYPE = eINSTANCE.getSuperGroup_SuperGroupType();
+
+		/**
+		 * The meta object literal for the '<em><b>Super Group Element List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUPER_GROUP__SUPER_GROUP_ELEMENT_LIST = eINSTANCE.getSuperGroup_SuperGroupElementList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.GroupingExpressionImpl <em>Grouping Expression</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.GroupingExpressionImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getGroupingExpression()
+		 * @generated
+		 */
+		EClass GROUPING_EXPRESSION = eINSTANCE.getGroupingExpression();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference GROUPING_EXPRESSION__VALUE_EXPR = eINSTANCE.getGroupingExpression_ValueExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Super Group Element Expr</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR = eINSTANCE.getGroupingExpression_SuperGroupElementExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.SuperGroupElementImpl <em>Super Group Element</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SuperGroupElementImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getSuperGroupElement()
+		 * @generated
+		 */
+		EClass SUPER_GROUP_ELEMENT = eINSTANCE.getSuperGroupElement();
+
+		/**
+		 * The meta object literal for the '<em><b>Super Group</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUPER_GROUP_ELEMENT__SUPER_GROUP = eINSTANCE.getSuperGroupElement_SuperGroup();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.SuperGroupElementSublistImpl <em>Super Group Element Sublist</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SuperGroupElementSublistImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getSuperGroupElementSublist()
+		 * @generated
+		 */
+		EClass SUPER_GROUP_ELEMENT_SUBLIST = eINSTANCE.getSuperGroupElementSublist();
+
+		/**
+		 * The meta object literal for the '<em><b>Super Group Element Expr List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUPER_GROUP_ELEMENT_SUBLIST__SUPER_GROUP_ELEMENT_EXPR_LIST = eINSTANCE.getSuperGroupElementSublist_SuperGroupElementExprList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.SuperGroupElementExpressionImpl <em>Super Group Element Expression</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SuperGroupElementExpressionImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getSuperGroupElementExpression()
+		 * @generated
+		 */
+		EClass SUPER_GROUP_ELEMENT_EXPRESSION = eINSTANCE.getSuperGroupElementExpression();
+
+		/**
+		 * The meta object literal for the '<em><b>Super Group Element Sublist</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUPER_GROUP_ELEMENT_EXPRESSION__SUPER_GROUP_ELEMENT_SUBLIST = eINSTANCE.getSuperGroupElementExpression_SuperGroupElementSublist();
+
+		/**
+		 * The meta object literal for the '<em><b>Grouping Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUPER_GROUP_ELEMENT_EXPRESSION__GROUPING_EXPR = eINSTANCE.getSuperGroupElementExpression_GroupingExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseSearchImpl <em>Value Expression Case Search</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseSearchImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionCaseSearch()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_CASE_SEARCH = eINSTANCE.getValueExpressionCaseSearch();
+
+		/**
+		 * The meta object literal for the '<em><b>Search Content List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE_SEARCH__SEARCH_CONTENT_LIST = eINSTANCE.getValueExpressionCaseSearch_SearchContentList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseSimpleImpl <em>Value Expression Case Simple</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseSimpleImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionCaseSimple()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_CASE_SIMPLE = eINSTANCE.getValueExpressionCaseSimple();
+
+		/**
+		 * The meta object literal for the '<em><b>Content List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE_SIMPLE__CONTENT_LIST = eINSTANCE.getValueExpressionCaseSimple_ContentList();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE_SIMPLE__VALUE_EXPR = eINSTANCE.getValueExpressionCaseSimple_ValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseElseImpl <em>Value Expression Case Else</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseElseImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionCaseElse()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_CASE_ELSE = eINSTANCE.getValueExpressionCaseElse();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Case</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE_ELSE__VALUE_EXPR_CASE = eINSTANCE.getValueExpressionCaseElse_ValueExprCase();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE_ELSE__VALUE_EXPR = eINSTANCE.getValueExpressionCaseElse_ValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseSearchContentImpl <em>Value Expression Case Search Content</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseSearchContentImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionCaseSearchContent()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_CASE_SEARCH_CONTENT = eINSTANCE.getValueExpressionCaseSearchContent();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE_SEARCH_CONTENT__VALUE_EXPR = eINSTANCE.getValueExpressionCaseSearchContent_ValueExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Search Condition</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE_SEARCH_CONTENT__SEARCH_CONDITION = eINSTANCE.getValueExpressionCaseSearchContent_SearchCondition();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Case Search</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE_SEARCH_CONTENT__VALUE_EXPR_CASE_SEARCH = eINSTANCE.getValueExpressionCaseSearchContent_ValueExprCaseSearch();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseSimpleContentImpl <em>Value Expression Case Simple Content</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionCaseSimpleContentImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionCaseSimpleContent()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_CASE_SIMPLE_CONTENT = eINSTANCE.getValueExpressionCaseSimpleContent();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr Case Simple</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE_SIMPLE_CONTENT__VALUE_EXPR_CASE_SIMPLE = eINSTANCE.getValueExpressionCaseSimpleContent_ValueExprCaseSimple();
+
+		/**
+		 * The meta object literal for the '<em><b>When Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE_SIMPLE_CONTENT__WHEN_VALUE_EXPR = eINSTANCE.getValueExpressionCaseSimpleContent_WhenValueExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Result Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_CASE_SIMPLE_CONTENT__RESULT_VALUE_EXPR = eINSTANCE.getValueExpressionCaseSimpleContent_ResultValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.TableInDatabaseImpl <em>Table In Database</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.TableInDatabaseImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getTableInDatabase()
+		 * @generated
+		 */
+		EClass TABLE_IN_DATABASE = eINSTANCE.getTableInDatabase();
+
+		/**
+		 * The meta object literal for the '<em><b>Update Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_IN_DATABASE__UPDATE_STATEMENT = eINSTANCE.getTableInDatabase_UpdateStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Delete Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_IN_DATABASE__DELETE_STATEMENT = eINSTANCE.getTableInDatabase_DeleteStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Insert Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_IN_DATABASE__INSERT_STATEMENT = eINSTANCE.getTableInDatabase_InsertStatement();
+
+		/**
+		 * The meta object literal for the '<em><b>Database Table</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_IN_DATABASE__DATABASE_TABLE = eINSTANCE.getTableInDatabase_DatabaseTable();
+
+		/**
+		 * The meta object literal for the '<em><b>Derived Column List</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_IN_DATABASE__DERIVED_COLUMN_LIST = eINSTANCE.getTableInDatabase_DerivedColumnList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.TableFunctionImpl <em>Table Function</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.TableFunctionImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getTableFunction()
+		 * @generated
+		 */
+		EClass TABLE_FUNCTION = eINSTANCE.getTableFunction();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryObjectImpl <em>SQL Query Object</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryObjectImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getSQLQueryObject()
+		 * @generated
+		 */
+		EClass SQL_QUERY_OBJECT = eINSTANCE.getSQLQueryObject();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryChangeStatementImpl <em>Query Change Statement</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryChangeStatementImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryChangeStatement()
+		 * @generated
+		 */
+		EClass QUERY_CHANGE_STATEMENT = eINSTANCE.getQueryChangeStatement();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ColumnNameImpl <em>Column Name</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ColumnNameImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getColumnName()
+		 * @generated
+		 */
+		EClass COLUMN_NAME = eINSTANCE.getColumnName();
+
+		/**
+		 * The meta object literal for the '<em><b>Table Correlation</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference COLUMN_NAME__TABLE_CORRELATION = eINSTANCE.getColumnName_TableCorrelation();
+
+		/**
+		 * The meta object literal for the '<em><b>With Table Specification</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference COLUMN_NAME__WITH_TABLE_SPECIFICATION = eINSTANCE.getColumnName_WithTableSpecification();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.TableNestedImpl <em>Table Nested</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.TableNestedImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getTableNested()
+		 * @generated
+		 */
+		EClass TABLE_NESTED = eINSTANCE.getTableNested();
+
+		/**
+		 * The meta object literal for the '<em><b>Nested Table Ref</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_NESTED__NESTED_TABLE_REF = eINSTANCE.getTableNested_NestedTableRef();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.QueryMergeStatementImpl <em>Query Merge Statement</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.QueryMergeStatementImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryMergeStatement()
+		 * @generated
+		 */
+		EClass QUERY_MERGE_STATEMENT = eINSTANCE.getQueryMergeStatement();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.SearchConditionNestedImpl <em>Search Condition Nested</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SearchConditionNestedImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getSearchConditionNested()
+		 * @generated
+		 */
+		EClass SEARCH_CONDITION_NESTED = eINSTANCE.getSearchConditionNested();
+
+		/**
+		 * The meta object literal for the '<em><b>Nested Condition</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SEARCH_CONDITION_NESTED__NESTED_CONDITION = eINSTANCE.getSearchConditionNested_NestedCondition();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionNestedImpl <em>Value Expression Nested</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionNestedImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionNested()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_NESTED = eINSTANCE.getValueExpressionNested();
+
+		/**
+		 * The meta object literal for the '<em><b>Nested Value Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VALUE_EXPRESSION_NESTED__NESTED_VALUE_EXPR = eINSTANCE.getValueExpressionNested_NestedValueExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionAtomicImpl <em>Value Expression Atomic</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.ValueExpressionAtomicImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionAtomic()
+		 * @generated
+		 */
+		EClass VALUE_EXPRESSION_ATOMIC = eINSTANCE.getValueExpressionAtomic();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.OrderBySpecificationImpl <em>Order By Specification</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.OrderBySpecificationImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getOrderBySpecification()
+		 * @generated
+		 */
+		EClass ORDER_BY_SPECIFICATION = eINSTANCE.getOrderBySpecification();
+
+		/**
+		 * The meta object literal for the '<em><b>Descending</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ORDER_BY_SPECIFICATION__DESCENDING = eINSTANCE.getOrderBySpecification_Descending();
+
+		/**
+		 * The meta object literal for the '<em><b>Ordering Spec Option</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ORDER_BY_SPECIFICATION__ORDERING_SPEC_OPTION = eINSTANCE.getOrderBySpecification_OrderingSpecOption();
+
+		/**
+		 * The meta object literal for the '<em><b>Null Ordering Option</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ORDER_BY_SPECIFICATION__NULL_ORDERING_OPTION = eINSTANCE.getOrderBySpecification_NullOrderingOption();
+
+		/**
+		 * The meta object literal for the '<em><b>Select Statement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ORDER_BY_SPECIFICATION__SELECT_STATEMENT = eINSTANCE.getOrderBySpecification_SelectStatement();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.OrderByOrdinalImpl <em>Order By Ordinal</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.OrderByOrdinalImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getOrderByOrdinal()
+		 * @generated
+		 */
+		EClass ORDER_BY_ORDINAL = eINSTANCE.getOrderByOrdinal();
+
+		/**
+		 * The meta object literal for the '<em><b>Ordinal Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ORDER_BY_ORDINAL__ORDINAL_VALUE = eINSTANCE.getOrderByOrdinal_OrdinalValue();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.TableCorrelationImpl <em>Table Correlation</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.TableCorrelationImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getTableCorrelation()
+		 * @generated
+		 */
+		EClass TABLE_CORRELATION = eINSTANCE.getTableCorrelation();
+
+		/**
+		 * The meta object literal for the '<em><b>Table Expr</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_CORRELATION__TABLE_EXPR = eINSTANCE.getTableCorrelation_TableExpr();
+
+		/**
+		 * The meta object literal for the '<em><b>Column Name List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference TABLE_CORRELATION__COLUMN_NAME_LIST = eINSTANCE.getTableCorrelation_ColumnNameList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.UpdateSourceImpl <em>Update Source</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.UpdateSourceImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getUpdateSource()
+		 * @generated
+		 */
+		EClass UPDATE_SOURCE = eINSTANCE.getUpdateSource();
+
+		/**
+		 * The meta object literal for the '<em><b>Update Assignment Expr</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference UPDATE_SOURCE__UPDATE_ASSIGNMENT_EXPR = eINSTANCE.getUpdateSource_UpdateAssignmentExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.UpdateSourceExprListImpl <em>Update Source Expr List</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.UpdateSourceExprListImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getUpdateSourceExprList()
+		 * @generated
+		 */
+		EClass UPDATE_SOURCE_EXPR_LIST = eINSTANCE.getUpdateSourceExprList();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Expr List</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference UPDATE_SOURCE_EXPR_LIST__VALUE_EXPR_LIST = eINSTANCE.getUpdateSourceExprList_ValueExprList();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.UpdateSourceQueryImpl <em>Update Source Query</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.UpdateSourceQueryImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getUpdateSourceQuery()
+		 * @generated
+		 */
+		EClass UPDATE_SOURCE_QUERY = eINSTANCE.getUpdateSourceQuery();
+
+		/**
+		 * The meta object literal for the '<em><b>Query Expr</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference UPDATE_SOURCE_QUERY__QUERY_EXPR = eINSTANCE.getUpdateSourceQuery_QueryExpr();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.OrderByResultColumnImpl <em>Order By Result Column</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.OrderByResultColumnImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getOrderByResultColumn()
+		 * @generated
+		 */
+		EClass ORDER_BY_RESULT_COLUMN = eINSTANCE.getOrderByResultColumn();
+
+		/**
+		 * The meta object literal for the '<em><b>Result Col</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ORDER_BY_RESULT_COLUMN__RESULT_COL = eINSTANCE.getOrderByResultColumn_ResultCol();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.impl.WithTableReferenceImpl <em>With Table Reference</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.WithTableReferenceImpl
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getWithTableReference()
+		 * @generated
+		 */
+		EClass WITH_TABLE_REFERENCE = eINSTANCE.getWithTableReference();
+
+		/**
+		 * The meta object literal for the '<em><b>With Table Specification</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference WITH_TABLE_REFERENCE__WITH_TABLE_SPECIFICATION = eINSTANCE.getWithTableReference_WithTableSpecification();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.SuperGroupType <em>Super Group Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.SuperGroupType
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getSuperGroupType()
+		 * @generated
+		 */
+		EEnum SUPER_GROUP_TYPE = eINSTANCE.getSuperGroupType();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.PredicateQuantifiedType <em>Predicate Quantified Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.PredicateQuantifiedType
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateQuantifiedType()
+		 * @generated
+		 */
+		EEnum PREDICATE_QUANTIFIED_TYPE = eINSTANCE.getPredicateQuantifiedType();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.PredicateComparisonOperator <em>Predicate Comparison Operator</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.PredicateComparisonOperator
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getPredicateComparisonOperator()
+		 * @generated
+		 */
+		EEnum PREDICATE_COMPARISON_OPERATOR = eINSTANCE.getPredicateComparisonOperator();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.SearchConditionCombinedOperator <em>Search Condition Combined Operator</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.SearchConditionCombinedOperator
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getSearchConditionCombinedOperator()
+		 * @generated
+		 */
+		EEnum SEARCH_CONDITION_COMBINED_OPERATOR = eINSTANCE.getSearchConditionCombinedOperator();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.TableJoinedOperator <em>Table Joined Operator</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.TableJoinedOperator
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getTableJoinedOperator()
+		 * @generated
+		 */
+		EEnum TABLE_JOINED_OPERATOR = eINSTANCE.getTableJoinedOperator();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.QueryCombinedOperator <em>Query Combined Operator</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.QueryCombinedOperator
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getQueryCombinedOperator()
+		 * @generated
+		 */
+		EEnum QUERY_COMBINED_OPERATOR = eINSTANCE.getQueryCombinedOperator();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.ValueExpressionUnaryOperator <em>Value Expression Unary Operator</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.ValueExpressionUnaryOperator
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionUnaryOperator()
+		 * @generated
+		 */
+		EEnum VALUE_EXPRESSION_UNARY_OPERATOR = eINSTANCE.getValueExpressionUnaryOperator();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.ValueExpressionCombinedOperator <em>Value Expression Combined Operator</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.ValueExpressionCombinedOperator
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionCombinedOperator()
+		 * @generated
+		 */
+		EEnum VALUE_EXPRESSION_COMBINED_OPERATOR = eINSTANCE.getValueExpressionCombinedOperator();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.ValueExpressionLabeledDurationType <em>Value Expression Labeled Duration Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.ValueExpressionLabeledDurationType
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getValueExpressionLabeledDurationType()
+		 * @generated
+		 */
+		EEnum VALUE_EXPRESSION_LABELED_DURATION_TYPE = eINSTANCE.getValueExpressionLabeledDurationType();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.NullOrderingType <em>Null Ordering Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.NullOrderingType
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getNullOrderingType()
+		 * @generated
+		 */
+		EEnum NULL_ORDERING_TYPE = eINSTANCE.getNullOrderingType();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.datatools.modelbase.sql.query.OrderingSpecType <em>Ordering Spec Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see org.eclipse.datatools.modelbase.sql.query.OrderingSpecType
+		 * @see org.eclipse.datatools.modelbase.sql.query.impl.SQLQueryModelPackageImpl#getOrderingSpecType()
+		 * @generated
+		 */
+		EEnum ORDERING_SPEC_TYPE = eINSTANCE.getOrderingSpecType();
+
+	}
+
 } //SQLQueryModelPackage
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SearchConditionCombinedOperator.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SearchConditionCombinedOperator.java
index aba0915..7922508 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SearchConditionCombinedOperator.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SearchConditionCombinedOperator.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: SearchConditionCombinedOperator.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: SearchConditionCombinedOperator.java,v 1.3 2005/12/22 22:18:50 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -56,7 +56,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final SearchConditionCombinedOperator AND_LITERAL = new SearchConditionCombinedOperator(AND, "AND");
+    public static final SearchConditionCombinedOperator AND_LITERAL = new SearchConditionCombinedOperator(AND, "AND", "AND");
 
 	/**
 	 * The '<em><b>OR</b></em>' literal object.
@@ -70,7 +70,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final SearchConditionCombinedOperator OR_LITERAL = new SearchConditionCombinedOperator(OR, "OR");
+    public static final SearchConditionCombinedOperator OR_LITERAL = new SearchConditionCombinedOperator(OR, "OR", "OR");
 
 	/**
 	 * An array of all the '<em><b>Search Condition Combined Operator</b></em>' enumerators.
@@ -93,15 +93,15 @@
     public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
 	/**
-	 * Returns the '<em><b>Search Condition Combined Operator</b></em>' literal with the specified name.
+	 * Returns the '<em><b>Search Condition Combined Operator</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public static SearchConditionCombinedOperator get(String name) {
+    public static SearchConditionCombinedOperator get(String literal) {
 		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
 			SearchConditionCombinedOperator result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
+			if (result.toString().equals(literal)) {
 				return result;
 			}
 		}
@@ -109,7 +109,23 @@
 	}
 
 	/**
-	 * Returns the '<em><b>Search Condition Combined Operator</b></em>' literal with the specified value.
+	 * Returns the '<em><b>Search Condition Combined Operator</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static SearchConditionCombinedOperator getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			SearchConditionCombinedOperator result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Search Condition Combined Operator</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
@@ -128,8 +144,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private SearchConditionCombinedOperator(int value, String name) {
-		super(value, name);
+	private SearchConditionCombinedOperator(int value, String name, String literal) {
+		super(value, name, literal);
 	}
 
 } //SQLSearchConditionCombinedOperator
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SuperGroupType.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SuperGroupType.java
index 238c295..151fbff 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SuperGroupType.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/SuperGroupType.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: SuperGroupType.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: SuperGroupType.java,v 1.3 2005/12/22 22:18:50 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -67,7 +67,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final SuperGroupType CUBE_LITERAL = new SuperGroupType(CUBE, "CUBE");
+    public static final SuperGroupType CUBE_LITERAL = new SuperGroupType(CUBE, "CUBE", "CUBE");
 
 	/**
 	 * The '<em><b>GRANDTOTAL</b></em>' literal object.
@@ -81,7 +81,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final SuperGroupType GRANDTOTAL_LITERAL = new SuperGroupType(GRANDTOTAL, "GRANDTOTAL");
+    public static final SuperGroupType GRANDTOTAL_LITERAL = new SuperGroupType(GRANDTOTAL, "GRANDTOTAL", "GRANDTOTAL");
 
 	/**
 	 * The '<em><b>ROLLUP</b></em>' literal object.
@@ -95,7 +95,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final SuperGroupType ROLLUP_LITERAL = new SuperGroupType(ROLLUP, "ROLLUP");
+    public static final SuperGroupType ROLLUP_LITERAL = new SuperGroupType(ROLLUP, "ROLLUP", "ROLLUP");
 
 	/**
 	 * An array of all the '<em><b>Super Group Type</b></em>' enumerators.
@@ -119,15 +119,15 @@
     public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
 	/**
-	 * Returns the '<em><b>Super Group Type</b></em>' literal with the specified name.
+	 * Returns the '<em><b>Super Group Type</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public static SuperGroupType get(String name) {
+    public static SuperGroupType get(String literal) {
 		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
 			SuperGroupType result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
+			if (result.toString().equals(literal)) {
 				return result;
 			}
 		}
@@ -135,7 +135,23 @@
 	}
 
 	/**
-	 * Returns the '<em><b>Super Group Type</b></em>' literal with the specified value.
+	 * Returns the '<em><b>Super Group Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static SuperGroupType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			SuperGroupType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Super Group Type</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
@@ -155,8 +171,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private SuperGroupType(int value, String name) {
-		super(value, name);
+	private SuperGroupType(int value, String name, String literal) {
+		super(value, name, literal);
 	}
 
 } //SQLSuperGroupType
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/TableJoinedOperator.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/TableJoinedOperator.java
index 86e5b49..f26be28 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/TableJoinedOperator.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/TableJoinedOperator.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: TableJoinedOperator.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: TableJoinedOperator.java,v 1.3 2005/12/22 22:18:49 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -89,7 +89,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final TableJoinedOperator DEFAULT_INNER_LITERAL = new TableJoinedOperator(DEFAULT_INNER, "DEFAULT_INNER");
+    public static final TableJoinedOperator DEFAULT_INNER_LITERAL = new TableJoinedOperator(DEFAULT_INNER, "DEFAULT_INNER", "DEFAULT_INNER");
 
 	/**
 	 * The '<em><b>EXPLICIT INNER</b></em>' literal object.
@@ -103,7 +103,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final TableJoinedOperator EXPLICIT_INNER_LITERAL = new TableJoinedOperator(EXPLICIT_INNER, "EXPLICIT_INNER");
+    public static final TableJoinedOperator EXPLICIT_INNER_LITERAL = new TableJoinedOperator(EXPLICIT_INNER, "EXPLICIT_INNER", "EXPLICIT_INNER");
 
 	/**
 	 * The '<em><b>LEFT OUTER</b></em>' literal object.
@@ -117,7 +117,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final TableJoinedOperator LEFT_OUTER_LITERAL = new TableJoinedOperator(LEFT_OUTER, "LEFT_OUTER");
+    public static final TableJoinedOperator LEFT_OUTER_LITERAL = new TableJoinedOperator(LEFT_OUTER, "LEFT_OUTER", "LEFT_OUTER");
 
 	/**
 	 * The '<em><b>RIGHT OUTER</b></em>' literal object.
@@ -131,7 +131,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final TableJoinedOperator RIGHT_OUTER_LITERAL = new TableJoinedOperator(RIGHT_OUTER, "RIGHT_OUTER");
+    public static final TableJoinedOperator RIGHT_OUTER_LITERAL = new TableJoinedOperator(RIGHT_OUTER, "RIGHT_OUTER", "RIGHT_OUTER");
 
 	/**
 	 * The '<em><b>FULL OUTER</b></em>' literal object.
@@ -145,7 +145,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final TableJoinedOperator FULL_OUTER_LITERAL = new TableJoinedOperator(FULL_OUTER, "FULL_OUTER");
+    public static final TableJoinedOperator FULL_OUTER_LITERAL = new TableJoinedOperator(FULL_OUTER, "FULL_OUTER", "FULL_OUTER");
 
 	/**
 	 * An array of all the '<em><b>Table Joined Operator</b></em>' enumerators.
@@ -171,15 +171,15 @@
     public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
 	/**
-	 * Returns the '<em><b>Table Joined Operator</b></em>' literal with the specified name.
+	 * Returns the '<em><b>Table Joined Operator</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public static TableJoinedOperator get(String name) {
+    public static TableJoinedOperator get(String literal) {
 		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
 			TableJoinedOperator result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
+			if (result.toString().equals(literal)) {
 				return result;
 			}
 		}
@@ -187,7 +187,23 @@
 	}
 
 	/**
-	 * Returns the '<em><b>Table Joined Operator</b></em>' literal with the specified value.
+	 * Returns the '<em><b>Table Joined Operator</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static TableJoinedOperator getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			TableJoinedOperator result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Table Joined Operator</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
@@ -209,8 +225,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private TableJoinedOperator(int value, String name) {
-		super(value, name);
+	private TableJoinedOperator(int value, String name, String literal) {
+		super(value, name, literal);
 	}
 
 } //SQLTableJoinedOperator
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionCombinedOperator.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionCombinedOperator.java
index 5ff0a42..6ebc844 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionCombinedOperator.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionCombinedOperator.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: ValueExpressionCombinedOperator.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: ValueExpressionCombinedOperator.java,v 1.3 2005/12/22 22:18:50 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -89,7 +89,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionCombinedOperator ADD_LITERAL = new ValueExpressionCombinedOperator(ADD, "ADD");
+    public static final ValueExpressionCombinedOperator ADD_LITERAL = new ValueExpressionCombinedOperator(ADD, "ADD", "ADD");
 
 	/**
 	 * The '<em><b>SUBTRACT</b></em>' literal object.
@@ -103,7 +103,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionCombinedOperator SUBTRACT_LITERAL = new ValueExpressionCombinedOperator(SUBTRACT, "SUBTRACT");
+    public static final ValueExpressionCombinedOperator SUBTRACT_LITERAL = new ValueExpressionCombinedOperator(SUBTRACT, "SUBTRACT", "SUBTRACT");
 
 	/**
 	 * The '<em><b>MULTIPLY</b></em>' literal object.
@@ -117,7 +117,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionCombinedOperator MULTIPLY_LITERAL = new ValueExpressionCombinedOperator(MULTIPLY, "MULTIPLY");
+    public static final ValueExpressionCombinedOperator MULTIPLY_LITERAL = new ValueExpressionCombinedOperator(MULTIPLY, "MULTIPLY", "MULTIPLY");
 
 	/**
 	 * The '<em><b>DIVIDE</b></em>' literal object.
@@ -131,7 +131,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionCombinedOperator DIVIDE_LITERAL = new ValueExpressionCombinedOperator(DIVIDE, "DIVIDE");
+    public static final ValueExpressionCombinedOperator DIVIDE_LITERAL = new ValueExpressionCombinedOperator(DIVIDE, "DIVIDE", "DIVIDE");
 
 	/**
 	 * The '<em><b>CONCATENATE</b></em>' literal object.
@@ -145,7 +145,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionCombinedOperator CONCATENATE_LITERAL = new ValueExpressionCombinedOperator(CONCATENATE, "CONCATENATE");
+    public static final ValueExpressionCombinedOperator CONCATENATE_LITERAL = new ValueExpressionCombinedOperator(CONCATENATE, "CONCATENATE", "CONCATENATE");
 
 	/**
 	 * An array of all the '<em><b>Value Expression Combined Operator</b></em>' enumerators.
@@ -171,15 +171,15 @@
     public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
 	/**
-	 * Returns the '<em><b>Value Expression Combined Operator</b></em>' literal with the specified name.
+	 * Returns the '<em><b>Value Expression Combined Operator</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public static ValueExpressionCombinedOperator get(String name) {
+    public static ValueExpressionCombinedOperator get(String literal) {
 		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
 			ValueExpressionCombinedOperator result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
+			if (result.toString().equals(literal)) {
 				return result;
 			}
 		}
@@ -187,7 +187,23 @@
 	}
 
 	/**
-	 * Returns the '<em><b>Value Expression Combined Operator</b></em>' literal with the specified value.
+	 * Returns the '<em><b>Value Expression Combined Operator</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static ValueExpressionCombinedOperator getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ValueExpressionCombinedOperator result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Value Expression Combined Operator</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
@@ -209,8 +225,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private ValueExpressionCombinedOperator(int value, String name) {
-		super(value, name);
+	private ValueExpressionCombinedOperator(int value, String name, String literal) {
+		super(value, name, literal);
 	}
 
 } //SQLValueExpressionCombinedOperator
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionLabeledDurationType.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionLabeledDurationType.java
index ee7acca..039bb1f 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionLabeledDurationType.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionLabeledDurationType.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: ValueExpressionLabeledDurationType.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: ValueExpressionLabeledDurationType.java,v 1.3 2005/12/22 22:18:49 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -111,7 +111,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionLabeledDurationType YEARS_LITERAL = new ValueExpressionLabeledDurationType(YEARS, "YEARS");
+    public static final ValueExpressionLabeledDurationType YEARS_LITERAL = new ValueExpressionLabeledDurationType(YEARS, "YEARS", "YEARS");
 
 	/**
 	 * The '<em><b>MONTHS</b></em>' literal object.
@@ -125,7 +125,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionLabeledDurationType MONTHS_LITERAL = new ValueExpressionLabeledDurationType(MONTHS, "MONTHS");
+    public static final ValueExpressionLabeledDurationType MONTHS_LITERAL = new ValueExpressionLabeledDurationType(MONTHS, "MONTHS", "MONTHS");
 
 	/**
 	 * The '<em><b>DAYS</b></em>' literal object.
@@ -139,7 +139,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionLabeledDurationType DAYS_LITERAL = new ValueExpressionLabeledDurationType(DAYS, "DAYS");
+    public static final ValueExpressionLabeledDurationType DAYS_LITERAL = new ValueExpressionLabeledDurationType(DAYS, "DAYS", "DAYS");
 
 	/**
 	 * The '<em><b>HOURS</b></em>' literal object.
@@ -153,7 +153,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionLabeledDurationType HOURS_LITERAL = new ValueExpressionLabeledDurationType(HOURS, "HOURS");
+    public static final ValueExpressionLabeledDurationType HOURS_LITERAL = new ValueExpressionLabeledDurationType(HOURS, "HOURS", "HOURS");
 
 	/**
 	 * The '<em><b>MINUTES</b></em>' literal object.
@@ -167,7 +167,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionLabeledDurationType MINUTES_LITERAL = new ValueExpressionLabeledDurationType(MINUTES, "MINUTES");
+    public static final ValueExpressionLabeledDurationType MINUTES_LITERAL = new ValueExpressionLabeledDurationType(MINUTES, "MINUTES", "MINUTES");
 
 	/**
 	 * The '<em><b>SECONDS</b></em>' literal object.
@@ -181,7 +181,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionLabeledDurationType SECONDS_LITERAL = new ValueExpressionLabeledDurationType(SECONDS, "SECONDS");
+    public static final ValueExpressionLabeledDurationType SECONDS_LITERAL = new ValueExpressionLabeledDurationType(SECONDS, "SECONDS", "SECONDS");
 
 	/**
 	 * The '<em><b>MICROSECONDS</b></em>' literal object.
@@ -195,7 +195,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionLabeledDurationType MICROSECONDS_LITERAL = new ValueExpressionLabeledDurationType(MICROSECONDS, "MICROSECONDS");
+    public static final ValueExpressionLabeledDurationType MICROSECONDS_LITERAL = new ValueExpressionLabeledDurationType(MICROSECONDS, "MICROSECONDS", "MICROSECONDS");
 
 	/**
 	 * An array of all the '<em><b>Value Expression Labeled Duration Type</b></em>' enumerators.
@@ -223,15 +223,15 @@
     public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
 	/**
-	 * Returns the '<em><b>Value Expression Labeled Duration Type</b></em>' literal with the specified name.
+	 * Returns the '<em><b>Value Expression Labeled Duration Type</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public static ValueExpressionLabeledDurationType get(String name) {
+    public static ValueExpressionLabeledDurationType get(String literal) {
 		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
 			ValueExpressionLabeledDurationType result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
+			if (result.toString().equals(literal)) {
 				return result;
 			}
 		}
@@ -239,7 +239,23 @@
 	}
 
 	/**
-	 * Returns the '<em><b>Value Expression Labeled Duration Type</b></em>' literal with the specified value.
+	 * Returns the '<em><b>Value Expression Labeled Duration Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static ValueExpressionLabeledDurationType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ValueExpressionLabeledDurationType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Value Expression Labeled Duration Type</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
@@ -263,8 +279,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private ValueExpressionLabeledDurationType(int value, String name) {
-		super(value, name);
+	private ValueExpressionLabeledDurationType(int value, String name, String literal) {
+		super(value, name, literal);
 	}
 
 } //SQLValueExpressionLabeledDurationType
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionUnaryOperator.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionUnaryOperator.java
index 1620556..828f54e 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionUnaryOperator.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/ValueExpressionUnaryOperator.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: ValueExpressionUnaryOperator.java,v 1.2 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: ValueExpressionUnaryOperator.java,v 1.3 2005/12/22 22:18:49 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query;
 
@@ -67,7 +67,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionUnaryOperator NONE_LITERAL = new ValueExpressionUnaryOperator(NONE, "NONE");
+    public static final ValueExpressionUnaryOperator NONE_LITERAL = new ValueExpressionUnaryOperator(NONE, "NONE", "NONE");
 
 	/**
 	 * The '<em><b>PLUS</b></em>' literal object.
@@ -81,7 +81,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionUnaryOperator PLUS_LITERAL = new ValueExpressionUnaryOperator(PLUS, "PLUS");
+    public static final ValueExpressionUnaryOperator PLUS_LITERAL = new ValueExpressionUnaryOperator(PLUS, "PLUS", "PLUS");
 
 	/**
 	 * The '<em><b>MINUS</b></em>' literal object.
@@ -95,7 +95,7 @@
 	 * @generated
 	 * @ordered
 	 */
-    public static final ValueExpressionUnaryOperator MINUS_LITERAL = new ValueExpressionUnaryOperator(MINUS, "MINUS");
+    public static final ValueExpressionUnaryOperator MINUS_LITERAL = new ValueExpressionUnaryOperator(MINUS, "MINUS", "MINUS");
 
 	/**
 	 * An array of all the '<em><b>Value Expression Unary Operator</b></em>' enumerators.
@@ -119,15 +119,15 @@
     public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
 	/**
-	 * Returns the '<em><b>Value Expression Unary Operator</b></em>' literal with the specified name.
+	 * Returns the '<em><b>Value Expression Unary Operator</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public static ValueExpressionUnaryOperator get(String name) {
+    public static ValueExpressionUnaryOperator get(String literal) {
 		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
 			ValueExpressionUnaryOperator result = VALUES_ARRAY[i];
-			if (result.toString().equals(name)) {
+			if (result.toString().equals(literal)) {
 				return result;
 			}
 		}
@@ -135,7 +135,23 @@
 	}
 
 	/**
-	 * Returns the '<em><b>Value Expression Unary Operator</b></em>' literal with the specified value.
+	 * Returns the '<em><b>Value Expression Unary Operator</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static ValueExpressionUnaryOperator getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ValueExpressionUnaryOperator result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Value Expression Unary Operator</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
 	 * @generated
@@ -155,8 +171,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private ValueExpressionUnaryOperator(int value, String name) {
-		super(value, name);
+	private ValueExpressionUnaryOperator(int value, String name, String literal) {
+		super(value, name, literal);
 	}
 
 } //SQLValueExpressionUnaryOperator
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/ColumnNameImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/ColumnNameImpl.java
index c2c256d..7230c79 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/ColumnNameImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/ColumnNameImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: ColumnNameImpl.java,v 1.2 2005/12/17 01:46:20 bpayton Exp $
+ * $Id: ColumnNameImpl.java,v 1.3 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -53,7 +53,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getColumnName();
+		return SQLQueryModelPackage.Literals.COLUMN_NAME;
 	}
 
 	/**
@@ -63,7 +63,17 @@
 	 */
     public TableCorrelation getTableCorrelation() {
 		if (eContainerFeatureID != SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION) return null;
-		return (TableCorrelation)eContainer;
+		return (TableCorrelation)eContainer();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetTableCorrelation(TableCorrelation newTableCorrelation, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newTableCorrelation, SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION, msgs);
+		return msgs;
 	}
 
 	/**
@@ -72,15 +82,15 @@
 	 * @generated
 	 */
     public void setTableCorrelation(TableCorrelation newTableCorrelation) {
-		if (newTableCorrelation != eContainer || (eContainerFeatureID != SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION && newTableCorrelation != null)) {
+		if (newTableCorrelation != eInternalContainer() || (eContainerFeatureID != SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION && newTableCorrelation != null)) {
 			if (EcoreUtil.isAncestor(this, newTableCorrelation))
 				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
 			NotificationChain msgs = null;
-			if (eContainer != null)
+			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
 			if (newTableCorrelation != null)
 				msgs = ((InternalEObject)newTableCorrelation).eInverseAdd(this, SQLQueryModelPackage.TABLE_CORRELATION__COLUMN_NAME_LIST, TableCorrelation.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject)newTableCorrelation, SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION, msgs);
+			msgs = basicSetTableCorrelation(newTableCorrelation, msgs);
 			if (msgs != null) msgs.dispatch();
 		}
 		else if (eNotificationRequired())
@@ -94,7 +104,17 @@
 	 */
     public WithTableSpecification getWithTableSpecification() {
 		if (eContainerFeatureID != SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION) return null;
-		return (WithTableSpecification)eContainer;
+		return (WithTableSpecification)eContainer();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetWithTableSpecification(WithTableSpecification newWithTableSpecification, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newWithTableSpecification, SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION, msgs);
+		return msgs;
 	}
 
 	/**
@@ -103,15 +123,15 @@
 	 * @generated
 	 */
     public void setWithTableSpecification(WithTableSpecification newWithTableSpecification) {
-		if (newWithTableSpecification != eContainer || (eContainerFeatureID != SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION && newWithTableSpecification != null)) {
+		if (newWithTableSpecification != eInternalContainer() || (eContainerFeatureID != SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION && newWithTableSpecification != null)) {
 			if (EcoreUtil.isAncestor(this, newWithTableSpecification))
 				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
 			NotificationChain msgs = null;
-			if (eContainer != null)
+			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
 			if (newWithTableSpecification != null)
 				msgs = ((InternalEObject)newWithTableSpecification).eInverseAdd(this, SQLQueryModelPackage.WITH_TABLE_SPECIFICATION__COLUMN_NAME_LIST, WithTableSpecification.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject)newWithTableSpecification, SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION, msgs);
+			msgs = basicSetWithTableSpecification(newWithTableSpecification, msgs);
 			if (msgs != null) msgs.dispatch();
 		}
 		else if (eNotificationRequired())
@@ -120,122 +140,75 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.COLUMN_NAME__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION, msgs);
-				case SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetTableCorrelation((TableCorrelation)otherEnd, msgs);
+			case SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetWithTableSpecification((WithTableSpecification)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.COLUMN_NAME__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.COLUMN_NAME__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION:
-					return eBasicSetContainer(null, SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION, msgs);
-				case SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION:
-					return eBasicSetContainer(null, SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION:
+				return basicSetTableCorrelation(null, msgs);
+			case SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION:
+				return basicSetWithTableSpecification(null, msgs);
 		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.TABLE_CORRELATION__COLUMN_NAME_LIST, TableCorrelation.class, msgs);
-				case SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.WITH_TABLE_SPECIFICATION__COLUMN_NAME_LIST, WithTableSpecification.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+		switch (eContainerFeatureID) {
+			case SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION:
+				return eInternalContainer().eInverseRemove(this, SQLQueryModelPackage.TABLE_CORRELATION__COLUMN_NAME_LIST, TableCorrelation.class, msgs);
+			case SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION:
+				return eInternalContainer().eInverseRemove(this, SQLQueryModelPackage.WITH_TABLE_SPECIFICATION__COLUMN_NAME_LIST, WithTableSpecification.class, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eBasicRemoveFromContainerFeature(msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.COLUMN_NAME__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.COLUMN_NAME__NAME:
-				return getName();
-			case SQLQueryModelPackage.COLUMN_NAME__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.COLUMN_NAME__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.COLUMN_NAME__LABEL:
-				return getLabel();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION:
 				return getTableCorrelation();
 			case SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION:
 				return getWithTableSpecification();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.COLUMN_NAME__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.COLUMN_NAME__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.COLUMN_NAME__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.COLUMN_NAME__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.COLUMN_NAME__LABEL:
-				setLabel((String)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION:
 				setTableCorrelation((TableCorrelation)newValue);
 				return;
@@ -243,31 +216,16 @@
 				setWithTableSpecification((WithTableSpecification)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.COLUMN_NAME__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.COLUMN_NAME__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.COLUMN_NAME__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.COLUMN_NAME__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.COLUMN_NAME__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION:
 				setTableCorrelation((TableCorrelation)null);
 				return;
@@ -275,32 +233,22 @@
 				setWithTableSpecification((WithTableSpecification)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.COLUMN_NAME__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.COLUMN_NAME__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.COLUMN_NAME__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.COLUMN_NAME__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.COLUMN_NAME__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.COLUMN_NAME__TABLE_CORRELATION:
 				return getTableCorrelation() != null;
 			case SQLQueryModelPackage.COLUMN_NAME__WITH_TABLE_SPECIFICATION:
 				return getWithTableSpecification() != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLColumnNameImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/CursorReferenceImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/CursorReferenceImpl.java
index 44623f9..bba44e9 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/CursorReferenceImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/CursorReferenceImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: CursorReferenceImpl.java,v 1.2 2005/12/17 01:46:20 bpayton Exp $
+ * $Id: CursorReferenceImpl.java,v 1.3 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -52,7 +52,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getCursorReference();
+		return SQLQueryModelPackage.Literals.CURSOR_REFERENCE;
 	}
 
 	/**
@@ -62,7 +62,17 @@
 	 */
     public QueryUpdateStatement getUpdateStatement() {
 		if (eContainerFeatureID != SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT) return null;
-		return (QueryUpdateStatement)eContainer;
+		return (QueryUpdateStatement)eContainer();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetUpdateStatement(QueryUpdateStatement newUpdateStatement, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newUpdateStatement, SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT, msgs);
+		return msgs;
 	}
 
 	/**
@@ -71,15 +81,15 @@
 	 * @generated
 	 */
     public void setUpdateStatement(QueryUpdateStatement newUpdateStatement) {
-		if (newUpdateStatement != eContainer || (eContainerFeatureID != SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT && newUpdateStatement != null)) {
+		if (newUpdateStatement != eInternalContainer() || (eContainerFeatureID != SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT && newUpdateStatement != null)) {
 			if (EcoreUtil.isAncestor(this, newUpdateStatement))
 				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
 			NotificationChain msgs = null;
-			if (eContainer != null)
+			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
 			if (newUpdateStatement != null)
 				msgs = ((InternalEObject)newUpdateStatement).eInverseAdd(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CURRENT_OF_CLAUSE, QueryUpdateStatement.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject)newUpdateStatement, SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT, msgs);
+			msgs = basicSetUpdateStatement(newUpdateStatement, msgs);
 			if (msgs != null) msgs.dispatch();
 		}
 		else if (eNotificationRequired())
@@ -93,7 +103,17 @@
 	 */
     public QueryDeleteStatement getDeleteStatement() {
 		if (eContainerFeatureID != SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT) return null;
-		return (QueryDeleteStatement)eContainer;
+		return (QueryDeleteStatement)eContainer();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDeleteStatement(QueryDeleteStatement newDeleteStatement, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newDeleteStatement, SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT, msgs);
+		return msgs;
 	}
 
 	/**
@@ -102,15 +122,15 @@
 	 * @generated
 	 */
     public void setDeleteStatement(QueryDeleteStatement newDeleteStatement) {
-		if (newDeleteStatement != eContainer || (eContainerFeatureID != SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT && newDeleteStatement != null)) {
+		if (newDeleteStatement != eInternalContainer() || (eContainerFeatureID != SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT && newDeleteStatement != null)) {
 			if (EcoreUtil.isAncestor(this, newDeleteStatement))
 				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
 			NotificationChain msgs = null;
-			if (eContainer != null)
+			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
 			if (newDeleteStatement != null)
 				msgs = ((InternalEObject)newDeleteStatement).eInverseAdd(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CURRENT_OF_CLAUSE, QueryDeleteStatement.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject)newDeleteStatement, SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT, msgs);
+			msgs = basicSetDeleteStatement(newDeleteStatement, msgs);
 			if (msgs != null) msgs.dispatch();
 		}
 		else if (eNotificationRequired())
@@ -119,122 +139,75 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.CURSOR_REFERENCE__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetUpdateStatement((QueryUpdateStatement)otherEnd, msgs);
+			case SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetDeleteStatement((QueryDeleteStatement)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.CURSOR_REFERENCE__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.CURSOR_REFERENCE__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT:
+				return basicSetUpdateStatement(null, msgs);
+			case SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT:
+				return basicSetDeleteStatement(null, msgs);
 		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CURRENT_OF_CLAUSE, QueryUpdateStatement.class, msgs);
-				case SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CURRENT_OF_CLAUSE, QueryDeleteStatement.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+		switch (eContainerFeatureID) {
+			case SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT:
+				return eInternalContainer().eInverseRemove(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CURRENT_OF_CLAUSE, QueryUpdateStatement.class, msgs);
+			case SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT:
+				return eInternalContainer().eInverseRemove(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CURRENT_OF_CLAUSE, QueryDeleteStatement.class, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eBasicRemoveFromContainerFeature(msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.CURSOR_REFERENCE__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.CURSOR_REFERENCE__NAME:
-				return getName();
-			case SQLQueryModelPackage.CURSOR_REFERENCE__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.CURSOR_REFERENCE__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.CURSOR_REFERENCE__LABEL:
-				return getLabel();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT:
 				return getUpdateStatement();
 			case SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT:
 				return getDeleteStatement();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.CURSOR_REFERENCE__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.CURSOR_REFERENCE__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.CURSOR_REFERENCE__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.CURSOR_REFERENCE__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.CURSOR_REFERENCE__LABEL:
-				setLabel((String)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT:
 				setUpdateStatement((QueryUpdateStatement)newValue);
 				return;
@@ -242,31 +215,16 @@
 				setDeleteStatement((QueryDeleteStatement)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.CURSOR_REFERENCE__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.CURSOR_REFERENCE__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.CURSOR_REFERENCE__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.CURSOR_REFERENCE__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.CURSOR_REFERENCE__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT:
 				setUpdateStatement((QueryUpdateStatement)null);
 				return;
@@ -274,32 +232,22 @@
 				setDeleteStatement((QueryDeleteStatement)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.CURSOR_REFERENCE__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.CURSOR_REFERENCE__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.CURSOR_REFERENCE__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.CURSOR_REFERENCE__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.CURSOR_REFERENCE__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.CURSOR_REFERENCE__UPDATE_STATEMENT:
 				return getUpdateStatement() != null;
 			case SQLQueryModelPackage.CURSOR_REFERENCE__DELETE_STATEMENT:
 				return getDeleteStatement() != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLCursorReferenceImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingExpressionImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingExpressionImpl.java
index 8eb585d..b1d3401 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingExpressionImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingExpressionImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: GroupingExpressionImpl.java,v 1.2 2005/12/17 01:46:19 bpayton Exp $
+ * $Id: GroupingExpressionImpl.java,v 1.3 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -64,7 +64,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getGroupingExpression();
+		return SQLQueryModelPackage.Literals.GROUPING_EXPRESSION;
 	}
 
 	/**
@@ -117,7 +117,17 @@
 	 */
     public SuperGroupElementExpression getSuperGroupElementExpr() {
 		if (eContainerFeatureID != SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR) return null;
-		return (SuperGroupElementExpression)eContainer;
+		return (SuperGroupElementExpression)eContainer();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSuperGroupElementExpr(SuperGroupElementExpression newSuperGroupElementExpr, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newSuperGroupElementExpr, SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR, msgs);
+		return msgs;
 	}
 
 	/**
@@ -126,15 +136,15 @@
 	 * @generated
 	 */
     public void setSuperGroupElementExpr(SuperGroupElementExpression newSuperGroupElementExpr) {
-		if (newSuperGroupElementExpr != eContainer || (eContainerFeatureID != SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR && newSuperGroupElementExpr != null)) {
+		if (newSuperGroupElementExpr != eInternalContainer() || (eContainerFeatureID != SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR && newSuperGroupElementExpr != null)) {
 			if (EcoreUtil.isAncestor(this, newSuperGroupElementExpr))
 				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
 			NotificationChain msgs = null;
-			if (eContainer != null)
+			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
 			if (newSuperGroupElementExpr != null)
 				msgs = ((InternalEObject)newSuperGroupElementExpr).eInverseAdd(this, SQLQueryModelPackage.SUPER_GROUP_ELEMENT_EXPRESSION__GROUPING_EXPR, SuperGroupElementExpression.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject)newSuperGroupElementExpr, SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR, msgs);
+			msgs = basicSetSuperGroupElementExpr(newSuperGroupElementExpr, msgs);
 			if (msgs != null) msgs.dispatch();
 		}
 		else if (eNotificationRequired())
@@ -143,146 +153,73 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__QUERY_SELECT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.GROUPING_EXPRESSION__QUERY_SELECT, msgs);
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__GROUPING_SETS_ELEMENT_EXPR:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.GROUPING_EXPRESSION__GROUPING_SETS_ELEMENT_EXPR, msgs);
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__VALUE_EXPR:
-					if (valueExpr != null)
-						msgs = ((InternalEObject)valueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.GROUPING_EXPRESSION__VALUE_EXPR, null, msgs);
-					return basicSetValueExpr((QueryValueExpression)otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_EXPRESSION__VALUE_EXPR:
+				if (valueExpr != null)
+					msgs = ((InternalEObject)valueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.GROUPING_EXPRESSION__VALUE_EXPR, null, msgs);
+				return basicSetValueExpr((QueryValueExpression)otherEnd, msgs);
+			case SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetSuperGroupElementExpr((SuperGroupElementExpression)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__QUERY_SELECT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.GROUPING_EXPRESSION__QUERY_SELECT, msgs);
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__GROUPING_SETS_ELEMENT_EXPR:
-					return eBasicSetContainer(null, SQLQueryModelPackage.GROUPING_EXPRESSION__GROUPING_SETS_ELEMENT_EXPR, msgs);
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__VALUE_EXPR:
-					return basicSetValueExpr(null, msgs);
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR:
-					return eBasicSetContainer(null, SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_EXPRESSION__VALUE_EXPR:
+				return basicSetValueExpr(null, msgs);
+			case SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR:
+				return basicSetSuperGroupElementExpr(null, msgs);
 		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__QUERY_SELECT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__GROUP_BY_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__GROUPING_SETS_ELEMENT_EXPR:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING, GroupingSetsElementExpression.class, msgs);
-				case SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SUPER_GROUP_ELEMENT_EXPRESSION__GROUPING_EXPR, SuperGroupElementExpression.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+		switch (eContainerFeatureID) {
+			case SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR:
+				return eInternalContainer().eInverseRemove(this, SQLQueryModelPackage.SUPER_GROUP_ELEMENT_EXPRESSION__GROUPING_EXPR, SuperGroupElementExpression.class, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eBasicRemoveFromContainerFeature(msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__NAME:
-				return getName();
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__QUERY_SELECT:
-				return getQuerySelect();
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__GROUPING_SETS_ELEMENT_EXPR:
-				return getGroupingSetsElementExpr();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_EXPRESSION__VALUE_EXPR:
 				return getValueExpr();
 			case SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR:
 				return getSuperGroupElementExpr();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__QUERY_SELECT:
-				setQuerySelect((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__GROUPING_SETS_ELEMENT_EXPR:
-				setGroupingSetsElementExpr((GroupingSetsElementExpression)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_EXPRESSION__VALUE_EXPR:
 				setValueExpr((QueryValueExpression)newValue);
 				return;
@@ -290,37 +227,16 @@
 				setSuperGroupElementExpr((SuperGroupElementExpression)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__QUERY_SELECT:
-				setQuerySelect((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__GROUPING_SETS_ELEMENT_EXPR:
-				setGroupingSetsElementExpr((GroupingSetsElementExpression)null);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_EXPRESSION__VALUE_EXPR:
 				setValueExpr((QueryValueExpression)null);
 				return;
@@ -328,36 +244,22 @@
 				setSuperGroupElementExpr((SuperGroupElementExpression)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__QUERY_SELECT:
-				return getQuerySelect() != null;
-			case SQLQueryModelPackage.GROUPING_EXPRESSION__GROUPING_SETS_ELEMENT_EXPR:
-				return getGroupingSetsElementExpr() != null;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_EXPRESSION__VALUE_EXPR:
 				return valueExpr != null;
 			case SQLQueryModelPackage.GROUPING_EXPRESSION__SUPER_GROUP_ELEMENT_EXPR:
 				return getSuperGroupElementExpr() != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLGroupingExpressionImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingImpl.java
index 7240e60..8abee84 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: GroupingImpl.java,v 1.2 2005/12/17 01:46:20 bpayton Exp $
+ * $Id: GroupingImpl.java,v 1.3 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -51,7 +51,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getGrouping();
+		return SQLQueryModelPackage.Literals.GROUPING;
 	}
 
 	/**
@@ -61,7 +61,17 @@
 	 */
     public GroupingSetsElementExpression getGroupingSetsElementExpr() {
 		if (eContainerFeatureID != SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR) return null;
-		return (GroupingSetsElementExpression)eContainer;
+		return (GroupingSetsElementExpression)eContainer();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetGroupingSetsElementExpr(GroupingSetsElementExpression newGroupingSetsElementExpr, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newGroupingSetsElementExpr, SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR, msgs);
+		return msgs;
 	}
 
 	/**
@@ -70,15 +80,15 @@
 	 * @generated
 	 */
     public void setGroupingSetsElementExpr(GroupingSetsElementExpression newGroupingSetsElementExpr) {
-		if (newGroupingSetsElementExpr != eContainer || (eContainerFeatureID != SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR && newGroupingSetsElementExpr != null)) {
+		if (newGroupingSetsElementExpr != eInternalContainer() || (eContainerFeatureID != SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR && newGroupingSetsElementExpr != null)) {
 			if (EcoreUtil.isAncestor(this, newGroupingSetsElementExpr))
 				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
 			NotificationChain msgs = null;
-			if (eContainer != null)
+			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
 			if (newGroupingSetsElementExpr != null)
 				msgs = ((InternalEObject)newGroupingSetsElementExpr).eInverseAdd(this, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING, GroupingSetsElementExpression.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject)newGroupingSetsElementExpr, SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR, msgs);
+			msgs = basicSetGroupingSetsElementExpr(newGroupingSetsElementExpr, msgs);
 			if (msgs != null) msgs.dispatch();
 		}
 		else if (eNotificationRequired())
@@ -87,187 +97,97 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING__QUERY_SELECT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.GROUPING__QUERY_SELECT, msgs);
-				case SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetGroupingSetsElementExpr((GroupingSetsElementExpression)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING__QUERY_SELECT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.GROUPING__QUERY_SELECT, msgs);
-				case SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR:
-					return eBasicSetContainer(null, SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR:
+				return basicSetGroupingSetsElementExpr(null, msgs);
 		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.GROUPING__QUERY_SELECT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__GROUP_BY_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING, GroupingSetsElementExpression.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+		switch (eContainerFeatureID) {
+			case SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR:
+				return eInternalContainer().eInverseRemove(this, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING, GroupingSetsElementExpression.class, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eBasicRemoveFromContainerFeature(msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.GROUPING__NAME:
-				return getName();
-			case SQLQueryModelPackage.GROUPING__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.GROUPING__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.GROUPING__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.GROUPING__QUERY_SELECT:
-				return getQuerySelect();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR:
 				return getGroupingSetsElementExpr();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING__QUERY_SELECT:
-				setQuerySelect((QuerySelect)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR:
 				setGroupingSetsElementExpr((GroupingSetsElementExpression)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING__QUERY_SELECT:
-				setQuerySelect((QuerySelect)null);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR:
 				setGroupingSetsElementExpr((GroupingSetsElementExpression)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.GROUPING__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.GROUPING__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.GROUPING__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.GROUPING__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.GROUPING__QUERY_SELECT:
-				return getQuerySelect() != null;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING__GROUPING_SETS_ELEMENT_EXPR:
 				return getGroupingSetsElementExpr() != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLGroupImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementExpressionImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementExpressionImpl.java
index 2bf4748..bd719d0 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementExpressionImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementExpressionImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: GroupingSetsElementExpressionImpl.java,v 1.2 2005/12/17 01:46:20 bpayton Exp $
+ * $Id: GroupingSetsElementExpressionImpl.java,v 1.3 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -63,7 +63,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getGroupingSetsElementExpression();
+		return SQLQueryModelPackage.Literals.GROUPING_SETS_ELEMENT_EXPRESSION;
 	}
 
 	/**
@@ -73,7 +73,17 @@
 	 */
     public GroupingSetsElementSublist getGroupingSetsElementSublist() {
 		if (eContainerFeatureID != SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST) return null;
-		return (GroupingSetsElementSublist)eContainer;
+		return (GroupingSetsElementSublist)eContainer();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetGroupingSetsElementSublist(GroupingSetsElementSublist newGroupingSetsElementSublist, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newGroupingSetsElementSublist, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST, msgs);
+		return msgs;
 	}
 
 	/**
@@ -82,15 +92,15 @@
 	 * @generated
 	 */
     public void setGroupingSetsElementSublist(GroupingSetsElementSublist newGroupingSetsElementSublist) {
-		if (newGroupingSetsElementSublist != eContainer || (eContainerFeatureID != SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST && newGroupingSetsElementSublist != null)) {
+		if (newGroupingSetsElementSublist != eInternalContainer() || (eContainerFeatureID != SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST && newGroupingSetsElementSublist != null)) {
 			if (EcoreUtil.isAncestor(this, newGroupingSetsElementSublist))
 				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
 			NotificationChain msgs = null;
-			if (eContainer != null)
+			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
 			if (newGroupingSetsElementSublist != null)
 				msgs = ((InternalEObject)newGroupingSetsElementSublist).eInverseAdd(this, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST, GroupingSetsElementSublist.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject)newGroupingSetsElementSublist, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST, msgs);
+			msgs = basicSetGroupingSetsElementSublist(newGroupingSetsElementSublist, msgs);
 			if (msgs != null) msgs.dispatch();
 		}
 		else if (eNotificationRequired())
@@ -142,133 +152,73 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING:
-					if (grouping != null)
-						msgs = ((InternalEObject)grouping).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING, null, msgs);
-					return basicSetGrouping((Grouping)otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetGroupingSetsElementSublist((GroupingSetsElementSublist)otherEnd, msgs);
+			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING:
+				if (grouping != null)
+					msgs = ((InternalEObject)grouping).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING, null, msgs);
+				return basicSetGrouping((Grouping)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS:
-					return eBasicSetContainer(null, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST:
-					return eBasicSetContainer(null, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING:
-					return basicSetGrouping(null, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST:
+				return basicSetGroupingSetsElementSublist(null, msgs);
+			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING:
+				return basicSetGrouping(null, msgs);
 		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST, GroupingSets.class, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST, GroupingSetsElementSublist.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+		switch (eContainerFeatureID) {
+			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST:
+				return eInternalContainer().eInverseRemove(this, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST, GroupingSetsElementSublist.class, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eBasicRemoveFromContainerFeature(msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__NAME:
-				return getName();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS:
-				return getGroupingSets();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST:
 				return getGroupingSetsElementSublist();
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING:
 				return getGrouping();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS:
-				setGroupingSets((GroupingSets)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST:
 				setGroupingSetsElementSublist((GroupingSetsElementSublist)newValue);
 				return;
@@ -276,34 +226,16 @@
 				setGrouping((Grouping)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS:
-				setGroupingSets((GroupingSets)null);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST:
 				setGroupingSetsElementSublist((GroupingSetsElementSublist)null);
 				return;
@@ -311,34 +243,22 @@
 				setGrouping((Grouping)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS:
-				return getGroupingSets() != null;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING_SETS_ELEMENT_SUBLIST:
 				return getGroupingSetsElementSublist() != null;
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_EXPRESSION__GROUPING:
 				return grouping != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLGroupingSetsElementExpressionImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementImpl.java
index ec6f79b..4f3b822 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: GroupingSetsElementImpl.java,v 1.2 2005/12/17 01:46:21 bpayton Exp $
+ * $Id: GroupingSetsElementImpl.java,v 1.3 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -50,7 +50,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getGroupingSetsElement();
+		return SQLQueryModelPackage.Literals.GROUPING_SETS_ELEMENT;
 	}
 
 	/**
@@ -60,7 +60,17 @@
 	 */
     public GroupingSets getGroupingSets() {
 		if (eContainerFeatureID != SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS) return null;
-		return (GroupingSets)eContainer;
+		return (GroupingSets)eContainer();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetGroupingSets(GroupingSets newGroupingSets, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newGroupingSets, SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS, msgs);
+		return msgs;
 	}
 
 	/**
@@ -69,15 +79,15 @@
 	 * @generated
 	 */
     public void setGroupingSets(GroupingSets newGroupingSets) {
-		if (newGroupingSets != eContainer || (eContainerFeatureID != SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS && newGroupingSets != null)) {
+		if (newGroupingSets != eInternalContainer() || (eContainerFeatureID != SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS && newGroupingSets != null)) {
 			if (EcoreUtil.isAncestor(this, newGroupingSets))
 				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
 			NotificationChain msgs = null;
-			if (eContainer != null)
+			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
 			if (newGroupingSets != null)
 				msgs = ((InternalEObject)newGroupingSets).eInverseAdd(this, SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST, GroupingSets.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject)newGroupingSets, SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS, msgs);
+			msgs = basicSetGroupingSets(newGroupingSets, msgs);
 			if (msgs != null) msgs.dispatch();
 		}
 		else if (eNotificationRequired())
@@ -86,169 +96,97 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetGroupingSets((GroupingSets)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS:
-					return eBasicSetContainer(null, SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS:
+				return basicSetGroupingSets(null, msgs);
 		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST, GroupingSets.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+		switch (eContainerFeatureID) {
+			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS:
+				return eInternalContainer().eInverseRemove(this, SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST, GroupingSets.class, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eBasicRemoveFromContainerFeature(msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__NAME:
-				return getName();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__LABEL:
-				return getLabel();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS:
 				return getGroupingSets();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__LABEL:
-				setLabel((String)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS:
 				setGroupingSets((GroupingSets)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS:
 				setGroupingSets((GroupingSets)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT__GROUPING_SETS:
 				return getGroupingSets() != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLGroupingSetsElementImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementSublistImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementSublistImpl.java
index e4c018c..8384131 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementSublistImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsElementSublistImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: GroupingSetsElementSublistImpl.java,v 1.3 2005/12/19 20:56:37 bpayton Exp $
+ * $Id: GroupingSetsElementSublistImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -60,7 +60,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getGroupingSetsElementSublist();
+		return SQLQueryModelPackage.Literals.GROUPING_SETS_ELEMENT_SUBLIST;
 	}
 
 	/**
@@ -77,50 +77,15 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST:
-					return ((InternalEList)getGroupingSetsElementExprList()).basicAdd(otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST:
+				return ((InternalEList)getGroupingSetsElementExprList()).basicAdd(otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS:
-					return eBasicSetContainer(null, SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST:
-					return ((InternalEList)getGroupingSetsElementExprList()).basicRemove(otherEnd, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
@@ -128,133 +93,67 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST, GroupingSets.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST:
+				return ((InternalEList)getGroupingSetsElementExprList()).basicRemove(otherEnd, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__NAME:
-				return getName();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS:
-				return getGroupingSets();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST:
 				return getGroupingSetsElementExprList();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS:
-				setGroupingSets((GroupingSets)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST:
 				getGroupingSetsElementExprList().clear();
 				getGroupingSetsElementExprList().addAll((Collection)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS:
-				setGroupingSets((GroupingSets)null);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST:
 				getGroupingSetsElementExprList().clear();
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS:
-				return getGroupingSets() != null;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS_ELEMENT_SUBLIST__GROUPING_SETS_ELEMENT_EXPR_LIST:
 				return groupingSetsElementExprList != null && !groupingSetsElementExprList.isEmpty();
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLGroupingSetsElementSublistImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsImpl.java
index 8cb4150..b06be95 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSetsImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: GroupingSetsImpl.java,v 1.3 2005/12/19 20:56:37 bpayton Exp $
+ * $Id: GroupingSetsImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -60,7 +60,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getGroupingSets();
+		return SQLQueryModelPackage.Literals.GROUPING_SETS;
 	}
 
 	/**
@@ -77,50 +77,15 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_SETS__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS__QUERY_SELECT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.GROUPING_SETS__QUERY_SELECT, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST:
-					return ((InternalEList)getGroupingSetsElementList()).basicAdd(otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST:
+				return ((InternalEList)getGroupingSetsElementList()).basicAdd(otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_SETS__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS__QUERY_SELECT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.GROUPING_SETS__QUERY_SELECT, msgs);
-				case SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST:
-					return ((InternalEList)getGroupingSetsElementList()).basicRemove(otherEnd, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
@@ -128,133 +93,67 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.GROUPING_SETS__QUERY_SELECT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__GROUP_BY_CLAUSE, QuerySelect.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST:
+				return ((InternalEList)getGroupingSetsElementList()).basicRemove(otherEnd, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.GROUPING_SETS__NAME:
-				return getName();
-			case SQLQueryModelPackage.GROUPING_SETS__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.GROUPING_SETS__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.GROUPING_SETS__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.GROUPING_SETS__QUERY_SELECT:
-				return getQuerySelect();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST:
 				return getGroupingSetsElementList();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS__QUERY_SELECT:
-				setQuerySelect((QuerySelect)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST:
 				getGroupingSetsElementList().clear();
 				getGroupingSetsElementList().addAll((Collection)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SETS__QUERY_SELECT:
-				setQuerySelect((QuerySelect)null);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST:
 				getGroupingSetsElementList().clear();
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SETS__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.GROUPING_SETS__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.GROUPING_SETS__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.GROUPING_SETS__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.GROUPING_SETS__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.GROUPING_SETS__QUERY_SELECT:
-				return getQuerySelect() != null;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SETS__GROUPING_SETS_ELEMENT_LIST:
 				return groupingSetsElementList != null && !groupingSetsElementList.isEmpty();
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLGroupingSetsImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSpecificationImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSpecificationImpl.java
index 4c6dc66..89d3224 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSpecificationImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/GroupingSpecificationImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: GroupingSpecificationImpl.java,v 1.2 2005/12/17 01:46:20 bpayton Exp $
+ * $Id: GroupingSpecificationImpl.java,v 1.3 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -50,7 +50,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getGroupingSpecification();
+		return SQLQueryModelPackage.Literals.GROUPING_SPECIFICATION;
 	}
 
 	/**
@@ -60,7 +60,17 @@
 	 */
     public QuerySelect getQuerySelect() {
 		if (eContainerFeatureID != SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT) return null;
-		return (QuerySelect)eContainer;
+		return (QuerySelect)eContainer();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetQuerySelect(QuerySelect newQuerySelect, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newQuerySelect, SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT, msgs);
+		return msgs;
 	}
 
 	/**
@@ -69,15 +79,15 @@
 	 * @generated
 	 */
     public void setQuerySelect(QuerySelect newQuerySelect) {
-		if (newQuerySelect != eContainer || (eContainerFeatureID != SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT && newQuerySelect != null)) {
+		if (newQuerySelect != eInternalContainer() || (eContainerFeatureID != SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT && newQuerySelect != null)) {
 			if (EcoreUtil.isAncestor(this, newQuerySelect))
 				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
 			NotificationChain msgs = null;
-			if (eContainer != null)
+			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
 			if (newQuerySelect != null)
 				msgs = ((InternalEObject)newQuerySelect).eInverseAdd(this, SQLQueryModelPackage.QUERY_SELECT__GROUP_BY_CLAUSE, QuerySelect.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject)newQuerySelect, SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT, msgs);
+			msgs = basicSetQuerySelect(newQuerySelect, msgs);
 			if (msgs != null) msgs.dispatch();
 		}
 		else if (eNotificationRequired())
@@ -86,169 +96,97 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_SPECIFICATION__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetQuerySelect((QuerySelect)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.GROUPING_SPECIFICATION__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SPECIFICATION__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT:
+				return basicSetQuerySelect(null, msgs);
 		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__GROUP_BY_CLAUSE, QuerySelect.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+		switch (eContainerFeatureID) {
+			case SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT:
+				return eInternalContainer().eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__GROUP_BY_CLAUSE, QuerySelect.class, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eBasicRemoveFromContainerFeature(msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__NAME:
-				return getName();
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__LABEL:
-				return getLabel();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT:
 				return getQuerySelect();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__LABEL:
-				setLabel((String)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT:
 				setQuerySelect((QuerySelect)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT:
 				setQuerySelect((QuerySelect)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.GROUPING_SPECIFICATION__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.GROUPING_SPECIFICATION__QUERY_SELECT:
 				return getQuerySelect() != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLGroupBySpecificationImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByOrdinalImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByOrdinalImpl.java
index 967e6b9..f993021 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByOrdinalImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByOrdinalImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: OrderByOrdinalImpl.java,v 1.3 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: OrderByOrdinalImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -74,7 +74,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getOrderByOrdinal();
+		return SQLQueryModelPackage.Literals.ORDER_BY_ORDINAL;
 	}
 
 	/**
@@ -103,206 +103,53 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.ORDER_BY_ORDINAL__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_ORDINAL__SELECT_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.ORDER_BY_ORDINAL__SELECT_STATEMENT, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.ORDER_BY_ORDINAL__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_ORDINAL__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_ORDINAL__SELECT_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.ORDER_BY_ORDINAL__SELECT_STATEMENT, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.ORDER_BY_ORDINAL__SELECT_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT_STATEMENT__ORDER_BY_CLAUSE, QuerySelectStatement.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
-		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__NAME:
-				return getName();
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DESCENDING:
-				return isDescending() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__ORDERING_SPEC_OPTION:
-				return getOrderingSpecOption();
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__NULL_ORDERING_OPTION:
-				return getNullOrderingOption();
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__SELECT_STATEMENT:
-				return getSelectStatement();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_ORDINAL__ORDINAL_VALUE:
 				return new Integer(getOrdinalValue());
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DESCENDING:
-				setDescending(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__ORDERING_SPEC_OPTION:
-				setOrderingSpecOption((OrderingSpecType)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__NULL_ORDERING_OPTION:
-				setNullOrderingOption((NullOrderingType)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__SELECT_STATEMENT:
-				setSelectStatement((QuerySelectStatement)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_ORDINAL__ORDINAL_VALUE:
 				setOrdinalValue(((Integer)newValue).intValue());
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DESCENDING:
-				setDescending(DESCENDING_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__ORDERING_SPEC_OPTION:
-				setOrderingSpecOption(ORDERING_SPEC_OPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__NULL_ORDERING_OPTION:
-				setNullOrderingOption(NULL_ORDERING_OPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__SELECT_STATEMENT:
-				setSelectStatement((QuerySelectStatement)null);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_ORDINAL__ORDINAL_VALUE:
 				setOrdinalValue(ORDINAL_VALUE_EDEFAULT);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__DESCENDING:
-				return descending != DESCENDING_EDEFAULT;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__ORDERING_SPEC_OPTION:
-				return orderingSpecOption != ORDERING_SPEC_OPTION_EDEFAULT;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__NULL_ORDERING_OPTION:
-				return nullOrderingOption != NULL_ORDERING_OPTION_EDEFAULT;
-			case SQLQueryModelPackage.ORDER_BY_ORDINAL__SELECT_STATEMENT:
-				return getSelectStatement() != null;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_ORDINAL__ORDINAL_VALUE:
 				return ordinalValue != ORDINAL_VALUE_EDEFAULT;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 	/**
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByResultColumnImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByResultColumnImpl.java
index 11cb5e9..cfb9535 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByResultColumnImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByResultColumnImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: OrderByResultColumnImpl.java,v 1.3 2005/12/19 20:56:37 bpayton Exp $
+ * $Id: OrderByResultColumnImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -62,7 +62,7 @@
 	 * @generated
 	 */
   protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getOrderByResultColumn();
+		return SQLQueryModelPackage.Literals.ORDER_BY_RESULT_COLUMN;
 	}
 
 	/**
@@ -72,8 +72,8 @@
 	 */
   public ResultColumn getResultCol() {
 		if (resultCol != null && resultCol.eIsProxy()) {
-			ResultColumn oldResultCol = resultCol;
-			resultCol = (ResultColumn)eResolveProxy((InternalEObject)resultCol);
+			InternalEObject oldResultCol = (InternalEObject)resultCol;
+			resultCol = (ResultColumn)eResolveProxy(oldResultCol);
 			if (resultCol != oldResultCol) {
 				if (eNotificationRequired())
 					eNotify(new ENotificationImpl(this, Notification.RESOLVE, SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__RESULT_COL, oldResultCol, resultCol));
@@ -127,52 +127,17 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-  public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__SELECT_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__SELECT_STATEMENT, msgs);
-				case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__RESULT_COL:
-					if (resultCol != null)
-						msgs = ((InternalEObject)resultCol).eInverseRemove(this, SQLQueryModelPackage.RESULT_COLUMN__ORDER_BY_RESULT_COL, ResultColumn.class, msgs);
-					return basicSetResultCol((ResultColumn)otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__RESULT_COL:
+				if (resultCol != null)
+					msgs = ((InternalEObject)resultCol).eInverseRemove(this, SQLQueryModelPackage.RESULT_COLUMN__ORDER_BY_RESULT_COL, ResultColumn.class, msgs);
+				return basicSetResultCol((ResultColumn)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-	 * @generated
-	 */
-  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__SELECT_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__SELECT_STATEMENT, msgs);
-				case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__RESULT_COL:
-					return basicSetResultCol(null, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
@@ -180,163 +145,67 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__SELECT_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT_STATEMENT__ORDER_BY_CLAUSE, QuerySelectStatement.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__RESULT_COL:
+				return basicSetResultCol(null, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-  public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__NAME:
-				return getName();
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DESCENDING:
-				return isDescending() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__ORDERING_SPEC_OPTION:
-				return getOrderingSpecOption();
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__NULL_ORDERING_OPTION:
-				return getNullOrderingOption();
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__SELECT_STATEMENT:
-				return getSelectStatement();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__RESULT_COL:
 				if (resolve) return getResultCol();
 				return basicGetResultCol();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-  public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DESCENDING:
-				setDescending(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__ORDERING_SPEC_OPTION:
-				setOrderingSpecOption((OrderingSpecType)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__NULL_ORDERING_OPTION:
-				setNullOrderingOption((NullOrderingType)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__SELECT_STATEMENT:
-				setSelectStatement((QuerySelectStatement)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__RESULT_COL:
 				setResultCol((ResultColumn)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-  public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DESCENDING:
-				setDescending(DESCENDING_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__ORDERING_SPEC_OPTION:
-				setOrderingSpecOption(ORDERING_SPEC_OPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__NULL_ORDERING_OPTION:
-				setNullOrderingOption(NULL_ORDERING_OPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__SELECT_STATEMENT:
-				setSelectStatement((QuerySelectStatement)null);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__RESULT_COL:
 				setResultCol((ResultColumn)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-  public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__DESCENDING:
-				return descending != DESCENDING_EDEFAULT;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__ORDERING_SPEC_OPTION:
-				return orderingSpecOption != ORDERING_SPEC_OPTION_EDEFAULT;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__NULL_ORDERING_OPTION:
-				return nullOrderingOption != NULL_ORDERING_OPTION_EDEFAULT;
-			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__SELECT_STATEMENT:
-				return getSelectStatement() != null;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_RESULT_COLUMN__RESULT_COL:
 				return resultCol != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //OrderByResultColumnImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderBySpecificationImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderBySpecificationImpl.java
index f792f59..a0abac6 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderBySpecificationImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderBySpecificationImpl.java
@@ -1,7 +1,7 @@
 /**
  * </copyright>
  *
- * $Id: OrderBySpecificationImpl.java,v 1.2 2005/12/17 01:46:19 bpayton Exp $
+ * $Id: OrderBySpecificationImpl.java,v 1.3 2005/12/22 22:18:47 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -114,7 +114,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getOrderBySpecification();
+		return SQLQueryModelPackage.Literals.ORDER_BY_SPECIFICATION;
 	}
 
 	/**
@@ -187,7 +187,17 @@
 	 */
     public QuerySelectStatement getSelectStatement() {
 		if (eContainerFeatureID != SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT) return null;
-		return (QuerySelectStatement)eContainer;
+		return (QuerySelectStatement)eContainer();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSelectStatement(QuerySelectStatement newSelectStatement, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newSelectStatement, SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT, msgs);
+		return msgs;
 	}
 
 	/**
@@ -196,15 +206,15 @@
 	 * @generated
 	 */
     public void setSelectStatement(QuerySelectStatement newSelectStatement) {
-		if (newSelectStatement != eContainer || (eContainerFeatureID != SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT && newSelectStatement != null)) {
+		if (newSelectStatement != eInternalContainer() || (eContainerFeatureID != SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT && newSelectStatement != null)) {
 			if (EcoreUtil.isAncestor(this, newSelectStatement))
 				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
 			NotificationChain msgs = null;
-			if (eContainer != null)
+			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
 			if (newSelectStatement != null)
 				msgs = ((InternalEObject)newSelectStatement).eInverseAdd(this, SQLQueryModelPackage.QUERY_SELECT_STATEMENT__ORDER_BY_CLAUSE, QuerySelectStatement.class, msgs);
-			msgs = eBasicSetContainer((InternalEObject)newSelectStatement, SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT, msgs);
+			msgs = basicSetSelectStatement(newSelectStatement, msgs);
 			if (msgs != null) msgs.dispatch();
 		}
 		else if (eNotificationRequired())
@@ -213,82 +223,52 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetSelectStatement((QuerySelectStatement)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT:
+				return basicSetSelectStatement(null, msgs);
 		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT_STATEMENT__ORDER_BY_CLAUSE, QuerySelectStatement.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+		switch (eContainerFeatureID) {
+			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT:
+				return eInternalContainer().eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT_STATEMENT__ORDER_BY_CLAUSE, QuerySelectStatement.class, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eBasicRemoveFromContainerFeature(msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__NAME:
-				return getName();
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__LABEL:
-				return getLabel();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DESCENDING:
 				return isDescending() ? Boolean.TRUE : Boolean.FALSE;
 			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__ORDERING_SPEC_OPTION:
@@ -298,33 +278,16 @@
 			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT:
 				return getSelectStatement();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__LABEL:
-				setLabel((String)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DESCENDING:
 				setDescending(((Boolean)newValue).booleanValue());
 				return;
@@ -338,31 +301,16 @@
 				setSelectStatement((QuerySelectStatement)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DESCENDING:
 				setDescending(DESCENDING_EDEFAULT);
 				return;
@@ -376,26 +324,16 @@
 				setSelectStatement((QuerySelectStatement)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__DESCENDING:
 				return descending != DESCENDING_EDEFAULT;
 			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__ORDERING_SPEC_OPTION:
@@ -405,7 +343,7 @@
 			case SQLQueryModelPackage.ORDER_BY_SPECIFICATION__SELECT_STATEMENT:
 				return getSelectStatement() != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 	/**
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByValueExpressionImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByValueExpressionImpl.java
index 23a3cf2..920567b 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByValueExpressionImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/OrderByValueExpressionImpl.java
@@ -1,7 +1,7 @@
 /**
  * </copyright>
  *
- * $Id: OrderByValueExpressionImpl.java,v 1.3 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: OrderByValueExpressionImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -61,7 +61,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getOrderByValueExpression();
+		return SQLQueryModelPackage.Literals.ORDER_BY_VALUE_EXPRESSION;
 	}
 
 	/**
@@ -109,52 +109,17 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__SELECT_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__SELECT_STATEMENT, msgs);
-				case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR:
-					if (valueExpr != null)
-						msgs = ((InternalEObject)valueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR, null, msgs);
-					return basicSetValueExpr((QueryValueExpression)otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR:
+				if (valueExpr != null)
+					msgs = ((InternalEObject)valueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR, null, msgs);
+				return basicSetValueExpr((QueryValueExpression)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__SELECT_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__SELECT_STATEMENT, msgs);
-				case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR:
-					return basicSetValueExpr(null, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
@@ -162,162 +127,66 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__SELECT_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT_STATEMENT__ORDER_BY_CLAUSE, QuerySelectStatement.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR:
+				return basicSetValueExpr(null, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__NAME:
-				return getName();
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DESCENDING:
-				return isDescending() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__ORDERING_SPEC_OPTION:
-				return getOrderingSpecOption();
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__NULL_ORDERING_OPTION:
-				return getNullOrderingOption();
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__SELECT_STATEMENT:
-				return getSelectStatement();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR:
 				return getValueExpr();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DESCENDING:
-				setDescending(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__ORDERING_SPEC_OPTION:
-				setOrderingSpecOption((OrderingSpecType)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__NULL_ORDERING_OPTION:
-				setNullOrderingOption((NullOrderingType)newValue);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__SELECT_STATEMENT:
-				setSelectStatement((QuerySelectStatement)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR:
 				setValueExpr((QueryValueExpression)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DESCENDING:
-				setDescending(DESCENDING_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__ORDERING_SPEC_OPTION:
-				setOrderingSpecOption(ORDERING_SPEC_OPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__NULL_ORDERING_OPTION:
-				setNullOrderingOption(NULL_ORDERING_OPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__SELECT_STATEMENT:
-				setSelectStatement((QuerySelectStatement)null);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR:
 				setValueExpr((QueryValueExpression)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__DESCENDING:
-				return descending != DESCENDING_EDEFAULT;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__ORDERING_SPEC_OPTION:
-				return orderingSpecOption != ORDERING_SPEC_OPTION_EDEFAULT;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__NULL_ORDERING_OPTION:
-				return nullOrderingOption != NULL_ORDERING_OPTION_EDEFAULT;
-			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__SELECT_STATEMENT:
-				return getSelectStatement() != null;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.ORDER_BY_VALUE_EXPRESSION__VALUE_EXPR:
 				return valueExpr != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLOrderByValueExpressionImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateBasicImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateBasicImpl.java
index 4033148..8383054 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateBasicImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateBasicImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: PredicateBasicImpl.java,v 1.3 2005/12/19 20:56:37 bpayton Exp $
+ * $Id: PredicateBasicImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -99,7 +99,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getPredicateBasic();
+		return SQLQueryModelPackage.Literals.PREDICATE_BASIC;
 	}
 
 	/**
@@ -211,106 +211,21 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_BASIC__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__UPDATE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BASIC__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__DELETE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BASIC__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__TABLE_JOINED:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BASIC__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_LEFT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_RIGHT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_HAVING:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_WHERE:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BASIC__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__NEST:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BASIC__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__RIGHT_VALUE_EXPR:
-					if (rightValueExpr != null)
-						msgs = ((InternalEObject)rightValueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_BASIC__RIGHT_VALUE_EXPR, null, msgs);
-					return basicSetRightValueExpr((QueryValueExpression)otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__LEFT_VALUE_EXPR:
-					if (leftValueExpr != null)
-						msgs = ((InternalEObject)leftValueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_BASIC__LEFT_VALUE_EXPR, null, msgs);
-					return basicSetLeftValueExpr((QueryValueExpression)otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_BASIC__RIGHT_VALUE_EXPR:
+				if (rightValueExpr != null)
+					msgs = ((InternalEObject)rightValueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_BASIC__RIGHT_VALUE_EXPR, null, msgs);
+				return basicSetRightValueExpr((QueryValueExpression)otherEnd, msgs);
+			case SQLQueryModelPackage.PREDICATE_BASIC__LEFT_VALUE_EXPR:
+				if (leftValueExpr != null)
+					msgs = ((InternalEObject)leftValueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_BASIC__LEFT_VALUE_EXPR, null, msgs);
+				return basicSetLeftValueExpr((QueryValueExpression)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_BASIC__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__UPDATE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BASIC__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__DELETE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BASIC__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__TABLE_JOINED:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BASIC__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_LEFT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_RIGHT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_HAVING:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_WHERE:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BASIC__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__NEST:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BASIC__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__RIGHT_VALUE_EXPR:
-					return basicSetRightValueExpr(null, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__LEFT_VALUE_EXPR:
-					return basicSetLeftValueExpr(null, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
@@ -318,77 +233,23 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.PREDICATE_BASIC__UPDATE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CLAUSE, QueryUpdateStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__DELETE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CLAUSE, QueryDeleteStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__TABLE_JOINED:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.TABLE_JOINED__JOIN_CONDITION, TableJoined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_LEFT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__LEFT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_RIGHT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__RIGHT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_HAVING:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__HAVING_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_WHERE:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__WHERE_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.VALUE_EXPRESSION_CASE_SEARCH_CONTENT__SEARCH_CONDITION, ValueExpressionCaseSearchContent.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BASIC__NEST:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_NESTED__NESTED_CONDITION, SearchConditionNested.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_BASIC__RIGHT_VALUE_EXPR:
+				return basicSetRightValueExpr(null, msgs);
+			case SQLQueryModelPackage.PREDICATE_BASIC__LEFT_VALUE_EXPR:
+				return basicSetLeftValueExpr(null, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_BASIC__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.PREDICATE_BASIC__NAME:
-				return getName();
-			case SQLQueryModelPackage.PREDICATE_BASIC__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.PREDICATE_BASIC__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.PREDICATE_BASIC__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEGATED_CONDITION:
-				return isNegatedCondition() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_BASIC__UPDATE_STATEMENT:
-				return getUpdateStatement();
-			case SQLQueryModelPackage.PREDICATE_BASIC__DELETE_STATEMENT:
-				return getDeleteStatement();
-			case SQLQueryModelPackage.PREDICATE_BASIC__TABLE_JOINED:
-				return getTableJoined();
-			case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_LEFT:
-				return getCombinedLeft();
-			case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_RIGHT:
-				return getCombinedRight();
-			case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving();
-			case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere();
-			case SQLQueryModelPackage.PREDICATE_BASIC__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent();
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEST:
-				return getNest();
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEGATED_PREDICATE:
-				return isNegatedPredicate() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_BASIC__HAS_SELECTIVITY:
-				return isHasSelectivity() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_BASIC__SELECTIVITY_VALUE:
-				return getSelectivityValue();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_BASIC__COMPARISON_OPERATOR:
 				return getComparisonOperator();
 			case SQLQueryModelPackage.PREDICATE_BASIC__RIGHT_VALUE_EXPR:
@@ -396,72 +257,16 @@
 			case SQLQueryModelPackage.PREDICATE_BASIC__LEFT_VALUE_EXPR:
 				return getLeftValueExpr();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_BASIC__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEGATED_CONDITION:
-				setNegatedCondition(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__TABLE_JOINED:
-				setTableJoined((TableJoined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEST:
-				setNest((SearchConditionNested)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEGATED_PREDICATE:
-				setNegatedPredicate(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__HAS_SELECTIVITY:
-				setHasSelectivity(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__SELECTIVITY_VALUE:
-				setSelectivityValue((Integer)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_BASIC__COMPARISON_OPERATOR:
 				setComparisonOperator((PredicateComparisonOperator)newValue);
 				return;
@@ -472,70 +277,16 @@
 				setLeftValueExpr((QueryValueExpression)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_BASIC__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEGATED_CONDITION:
-				setNegatedCondition(NEGATED_CONDITION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__TABLE_JOINED:
-				setTableJoined((TableJoined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEST:
-				setNest((SearchConditionNested)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEGATED_PREDICATE:
-				setNegatedPredicate(NEGATED_PREDICATE_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__HAS_SELECTIVITY:
-				setHasSelectivity(HAS_SELECTIVITY_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BASIC__SELECTIVITY_VALUE:
-				setSelectivityValue(SELECTIVITY_VALUE_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_BASIC__COMPARISON_OPERATOR:
 				setComparisonOperator(COMPARISON_OPERATOR_EDEFAULT);
 				return;
@@ -546,52 +297,16 @@
 				setLeftValueExpr((QueryValueExpression)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_BASIC__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_BASIC__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.PREDICATE_BASIC__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_BASIC__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.PREDICATE_BASIC__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEGATED_CONDITION:
-				return negatedCondition != NEGATED_CONDITION_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_BASIC__UPDATE_STATEMENT:
-				return getUpdateStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_BASIC__DELETE_STATEMENT:
-				return getDeleteStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_BASIC__TABLE_JOINED:
-				return getTableJoined() != null;
-			case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_LEFT:
-				return getCombinedLeft() != null;
-			case SQLQueryModelPackage.PREDICATE_BASIC__COMBINED_RIGHT:
-				return getCombinedRight() != null;
-			case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving() != null;
-			case SQLQueryModelPackage.PREDICATE_BASIC__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere() != null;
-			case SQLQueryModelPackage.PREDICATE_BASIC__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent() != null;
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEST:
-				return getNest() != null;
-			case SQLQueryModelPackage.PREDICATE_BASIC__NEGATED_PREDICATE:
-				return negatedPredicate != NEGATED_PREDICATE_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_BASIC__HAS_SELECTIVITY:
-				return hasSelectivity != HAS_SELECTIVITY_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_BASIC__SELECTIVITY_VALUE:
-				return SELECTIVITY_VALUE_EDEFAULT == null ? selectivityValue != null : !SELECTIVITY_VALUE_EDEFAULT.equals(selectivityValue);
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_BASIC__COMPARISON_OPERATOR:
 				return comparisonOperator != COMPARISON_OPERATOR_EDEFAULT;
 			case SQLQueryModelPackage.PREDICATE_BASIC__RIGHT_VALUE_EXPR:
@@ -599,7 +314,7 @@
 			case SQLQueryModelPackage.PREDICATE_BASIC__LEFT_VALUE_EXPR:
 				return leftValueExpr != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 	/**
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateBetweenImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateBetweenImpl.java
index afb81b9..69bf823 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateBetweenImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateBetweenImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: PredicateBetweenImpl.java,v 1.3 2005/12/19 20:56:37 bpayton Exp $
+ * $Id: PredicateBetweenImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -109,7 +109,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getPredicateBetween();
+		return SQLQueryModelPackage.Literals.PREDICATE_BETWEEN;
 	}
 
 	/**
@@ -264,112 +264,25 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__UPDATE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BETWEEN__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__DELETE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BETWEEN__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__TABLE_JOINED:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BETWEEN__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_LEFT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_RIGHT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_HAVING:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_WHERE:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BETWEEN__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__NEST:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_BETWEEN__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__LEFT_VALUE_EXPR:
-					if (leftValueExpr != null)
-						msgs = ((InternalEObject)leftValueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_BETWEEN__LEFT_VALUE_EXPR, null, msgs);
-					return basicSetLeftValueExpr((QueryValueExpression)otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR1:
-					if (rightValueExpr1 != null)
-						msgs = ((InternalEObject)rightValueExpr1).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR1, null, msgs);
-					return basicSetRightValueExpr1((QueryValueExpression)otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR2:
-					if (rightValueExpr2 != null)
-						msgs = ((InternalEObject)rightValueExpr2).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR2, null, msgs);
-					return basicSetRightValueExpr2((QueryValueExpression)otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_BETWEEN__LEFT_VALUE_EXPR:
+				if (leftValueExpr != null)
+					msgs = ((InternalEObject)leftValueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_BETWEEN__LEFT_VALUE_EXPR, null, msgs);
+				return basicSetLeftValueExpr((QueryValueExpression)otherEnd, msgs);
+			case SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR1:
+				if (rightValueExpr1 != null)
+					msgs = ((InternalEObject)rightValueExpr1).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR1, null, msgs);
+				return basicSetRightValueExpr1((QueryValueExpression)otherEnd, msgs);
+			case SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR2:
+				if (rightValueExpr2 != null)
+					msgs = ((InternalEObject)rightValueExpr2).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR2, null, msgs);
+				return basicSetRightValueExpr2((QueryValueExpression)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__UPDATE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BETWEEN__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__DELETE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BETWEEN__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__TABLE_JOINED:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BETWEEN__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_LEFT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_RIGHT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_HAVING:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_WHERE:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BETWEEN__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__NEST:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_BETWEEN__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__LEFT_VALUE_EXPR:
-					return basicSetLeftValueExpr(null, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR1:
-					return basicSetRightValueExpr1(null, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR2:
-					return basicSetRightValueExpr2(null, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
@@ -377,77 +290,25 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__UPDATE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CLAUSE, QueryUpdateStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__DELETE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CLAUSE, QueryDeleteStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__TABLE_JOINED:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.TABLE_JOINED__JOIN_CONDITION, TableJoined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_LEFT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__LEFT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_RIGHT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__RIGHT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_HAVING:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__HAVING_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_WHERE:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__WHERE_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.VALUE_EXPRESSION_CASE_SEARCH_CONTENT__SEARCH_CONDITION, ValueExpressionCaseSearchContent.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_BETWEEN__NEST:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_NESTED__NESTED_CONDITION, SearchConditionNested.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_BETWEEN__LEFT_VALUE_EXPR:
+				return basicSetLeftValueExpr(null, msgs);
+			case SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR1:
+				return basicSetRightValueExpr1(null, msgs);
+			case SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR2:
+				return basicSetRightValueExpr2(null, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NAME:
-				return getName();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEGATED_CONDITION:
-				return isNegatedCondition() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__UPDATE_STATEMENT:
-				return getUpdateStatement();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DELETE_STATEMENT:
-				return getDeleteStatement();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__TABLE_JOINED:
-				return getTableJoined();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_LEFT:
-				return getCombinedLeft();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_RIGHT:
-				return getCombinedRight();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEST:
-				return getNest();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEGATED_PREDICATE:
-				return isNegatedPredicate() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__HAS_SELECTIVITY:
-				return isHasSelectivity() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__SELECTIVITY_VALUE:
-				return getSelectivityValue();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_BETWEEN__NOT_BETWEEN:
 				return isNotBetween() ? Boolean.TRUE : Boolean.FALSE;
 			case SQLQueryModelPackage.PREDICATE_BETWEEN__LEFT_VALUE_EXPR:
@@ -457,72 +318,16 @@
 			case SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR2:
 				return getRightValueExpr2();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEGATED_CONDITION:
-				setNegatedCondition(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__TABLE_JOINED:
-				setTableJoined((TableJoined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEST:
-				setNest((SearchConditionNested)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEGATED_PREDICATE:
-				setNegatedPredicate(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__HAS_SELECTIVITY:
-				setHasSelectivity(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__SELECTIVITY_VALUE:
-				setSelectivityValue((Integer)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_BETWEEN__NOT_BETWEEN:
 				setNotBetween(((Boolean)newValue).booleanValue());
 				return;
@@ -536,70 +341,16 @@
 				setRightValueExpr2((QueryValueExpression)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEGATED_CONDITION:
-				setNegatedCondition(NEGATED_CONDITION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__TABLE_JOINED:
-				setTableJoined((TableJoined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEST:
-				setNest((SearchConditionNested)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEGATED_PREDICATE:
-				setNegatedPredicate(NEGATED_PREDICATE_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__HAS_SELECTIVITY:
-				setHasSelectivity(HAS_SELECTIVITY_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__SELECTIVITY_VALUE:
-				setSelectivityValue(SELECTIVITY_VALUE_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_BETWEEN__NOT_BETWEEN:
 				setNotBetween(NOT_BETWEEN_EDEFAULT);
 				return;
@@ -613,52 +364,16 @@
 				setRightValueExpr2((QueryValueExpression)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEGATED_CONDITION:
-				return negatedCondition != NEGATED_CONDITION_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__UPDATE_STATEMENT:
-				return getUpdateStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__DELETE_STATEMENT:
-				return getDeleteStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__TABLE_JOINED:
-				return getTableJoined() != null;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_LEFT:
-				return getCombinedLeft() != null;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__COMBINED_RIGHT:
-				return getCombinedRight() != null;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving() != null;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere() != null;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent() != null;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEST:
-				return getNest() != null;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__NEGATED_PREDICATE:
-				return negatedPredicate != NEGATED_PREDICATE_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__HAS_SELECTIVITY:
-				return hasSelectivity != HAS_SELECTIVITY_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_BETWEEN__SELECTIVITY_VALUE:
-				return SELECTIVITY_VALUE_EDEFAULT == null ? selectivityValue != null : !SELECTIVITY_VALUE_EDEFAULT.equals(selectivityValue);
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_BETWEEN__NOT_BETWEEN:
 				return notBetween != NOT_BETWEEN_EDEFAULT;
 			case SQLQueryModelPackage.PREDICATE_BETWEEN__LEFT_VALUE_EXPR:
@@ -668,7 +383,7 @@
 			case SQLQueryModelPackage.PREDICATE_BETWEEN__RIGHT_VALUE_EXPR2:
 				return rightValueExpr2 != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 	/**
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateExistsImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateExistsImpl.java
index a65b38a..ee1bfcc 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateExistsImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateExistsImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: PredicateExistsImpl.java,v 1.3 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: PredicateExistsImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -66,7 +66,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getPredicateExists();
+		return SQLQueryModelPackage.Literals.PREDICATE_EXISTS;
 	}
 
 	/**
@@ -114,100 +114,17 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_EXISTS__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__UPDATE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_EXISTS__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__DELETE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_EXISTS__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__TABLE_JOINED:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_EXISTS__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_LEFT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_RIGHT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_HAVING:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_WHERE:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_EXISTS__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__NEST:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_EXISTS__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_EXPR:
-					if (queryExpr != null)
-						msgs = ((InternalEObject)queryExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_EXPR, null, msgs);
-					return basicSetQueryExpr((QueryExpressionBody)otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_EXPR:
+				if (queryExpr != null)
+					msgs = ((InternalEObject)queryExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_EXPR, null, msgs);
+				return basicSetQueryExpr((QueryExpressionBody)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_EXISTS__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__UPDATE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_EXISTS__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__DELETE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_EXISTS__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__TABLE_JOINED:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_EXISTS__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_LEFT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_RIGHT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_HAVING:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_WHERE:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_EXISTS__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__NEST:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_EXISTS__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_EXPR:
-					return basicSetQueryExpr(null, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
@@ -215,268 +132,66 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.PREDICATE_EXISTS__UPDATE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CLAUSE, QueryUpdateStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__DELETE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CLAUSE, QueryDeleteStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__TABLE_JOINED:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.TABLE_JOINED__JOIN_CONDITION, TableJoined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_LEFT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__LEFT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_RIGHT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__RIGHT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_HAVING:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__HAVING_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_WHERE:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__WHERE_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.VALUE_EXPRESSION_CASE_SEARCH_CONTENT__SEARCH_CONDITION, ValueExpressionCaseSearchContent.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_EXISTS__NEST:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_NESTED__NESTED_CONDITION, SearchConditionNested.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_EXPR:
+				return basicSetQueryExpr(null, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_EXISTS__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NAME:
-				return getName();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEGATED_CONDITION:
-				return isNegatedCondition() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__UPDATE_STATEMENT:
-				return getUpdateStatement();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DELETE_STATEMENT:
-				return getDeleteStatement();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__TABLE_JOINED:
-				return getTableJoined();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_LEFT:
-				return getCombinedLeft();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_RIGHT:
-				return getCombinedRight();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEST:
-				return getNest();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEGATED_PREDICATE:
-				return isNegatedPredicate() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__HAS_SELECTIVITY:
-				return isHasSelectivity() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__SELECTIVITY_VALUE:
-				return getSelectivityValue();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_EXPR:
 				return getQueryExpr();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_EXISTS__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEGATED_CONDITION:
-				setNegatedCondition(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__TABLE_JOINED:
-				setTableJoined((TableJoined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEST:
-				setNest((SearchConditionNested)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEGATED_PREDICATE:
-				setNegatedPredicate(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__HAS_SELECTIVITY:
-				setHasSelectivity(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__SELECTIVITY_VALUE:
-				setSelectivityValue((Integer)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_EXPR:
 				setQueryExpr((QueryExpressionBody)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_EXISTS__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEGATED_CONDITION:
-				setNegatedCondition(NEGATED_CONDITION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__TABLE_JOINED:
-				setTableJoined((TableJoined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEST:
-				setNest((SearchConditionNested)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEGATED_PREDICATE:
-				setNegatedPredicate(NEGATED_PREDICATE_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__HAS_SELECTIVITY:
-				setHasSelectivity(HAS_SELECTIVITY_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__SELECTIVITY_VALUE:
-				setSelectivityValue(SELECTIVITY_VALUE_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_EXPR:
 				setQueryExpr((QueryExpressionBody)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_EXISTS__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.PREDICATE_EXISTS__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEGATED_CONDITION:
-				return negatedCondition != NEGATED_CONDITION_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__UPDATE_STATEMENT:
-				return getUpdateStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__DELETE_STATEMENT:
-				return getDeleteStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__TABLE_JOINED:
-				return getTableJoined() != null;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_LEFT:
-				return getCombinedLeft() != null;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__COMBINED_RIGHT:
-				return getCombinedRight() != null;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving() != null;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere() != null;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent() != null;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEST:
-				return getNest() != null;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__NEGATED_PREDICATE:
-				return negatedPredicate != NEGATED_PREDICATE_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__HAS_SELECTIVITY:
-				return hasSelectivity != HAS_SELECTIVITY_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_EXISTS__SELECTIVITY_VALUE:
-				return SELECTIVITY_VALUE_EDEFAULT == null ? selectivityValue != null : !SELECTIVITY_VALUE_EDEFAULT.equals(selectivityValue);
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_EXISTS__QUERY_EXPR:
 				return queryExpr != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLPredicateExistsImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateImpl.java
index c21c194..de972bf 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: PredicateImpl.java,v 1.3 2005/12/19 20:56:37 bpayton Exp $
+ * $Id: PredicateImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -120,7 +120,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getPredicate();
+		return SQLQueryModelPackage.Literals.PREDICATE;
 	}
 
 	/**
@@ -191,163 +191,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE__UPDATE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE__DELETE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE__TABLE_JOINED:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE__COMBINED_LEFT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE__COMBINED_RIGHT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_HAVING:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_WHERE:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE__NEST:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE__NEST, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE__UPDATE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE__DELETE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE__TABLE_JOINED:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE__COMBINED_LEFT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE__COMBINED_RIGHT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_HAVING:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_WHERE:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE__NEST:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE__NEST, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.PREDICATE__UPDATE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CLAUSE, QueryUpdateStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE__DELETE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CLAUSE, QueryDeleteStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE__TABLE_JOINED:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.TABLE_JOINED__JOIN_CONDITION, TableJoined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE__COMBINED_LEFT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__LEFT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE__COMBINED_RIGHT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__RIGHT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_HAVING:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__HAVING_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_WHERE:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__WHERE_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.VALUE_EXPRESSION_CASE_SEARCH_CONTENT__SEARCH_CONDITION, ValueExpressionCaseSearchContent.class, msgs);
-				case SQLQueryModelPackage.PREDICATE__NEST:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_NESTED__NESTED_CONDITION, SearchConditionNested.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
-		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.PREDICATE__NAME:
-				return getName();
-			case SQLQueryModelPackage.PREDICATE__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.PREDICATE__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.PREDICATE__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.PREDICATE__NEGATED_CONDITION:
-				return isNegatedCondition() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE__UPDATE_STATEMENT:
-				return getUpdateStatement();
-			case SQLQueryModelPackage.PREDICATE__DELETE_STATEMENT:
-				return getDeleteStatement();
-			case SQLQueryModelPackage.PREDICATE__TABLE_JOINED:
-				return getTableJoined();
-			case SQLQueryModelPackage.PREDICATE__COMBINED_LEFT:
-				return getCombinedLeft();
-			case SQLQueryModelPackage.PREDICATE__COMBINED_RIGHT:
-				return getCombinedRight();
-			case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving();
-			case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere();
-			case SQLQueryModelPackage.PREDICATE__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent();
-			case SQLQueryModelPackage.PREDICATE__NEST:
-				return getNest();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE__NEGATED_PREDICATE:
 				return isNegatedPredicate() ? Boolean.TRUE : Boolean.FALSE;
 			case SQLQueryModelPackage.PREDICATE__HAS_SELECTIVITY:
@@ -355,63 +200,16 @@
 			case SQLQueryModelPackage.PREDICATE__SELECTIVITY_VALUE:
 				return getSelectivityValue();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__NEGATED_CONDITION:
-				setNegatedCondition(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__TABLE_JOINED:
-				setTableJoined((TableJoined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE__NEST:
-				setNest((SearchConditionNested)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE__NEGATED_PREDICATE:
 				setNegatedPredicate(((Boolean)newValue).booleanValue());
 				return;
@@ -422,61 +220,16 @@
 				setSelectivityValue((Integer)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE__NEGATED_CONDITION:
-				setNegatedCondition(NEGATED_CONDITION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE__TABLE_JOINED:
-				setTableJoined((TableJoined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE__NEST:
-				setNest((SearchConditionNested)null);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE__NEGATED_PREDICATE:
 				setNegatedPredicate(NEGATED_PREDICATE_EDEFAULT);
 				return;
@@ -487,46 +240,16 @@
 				setSelectivityValue(SELECTIVITY_VALUE_EDEFAULT);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.PREDICATE__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.PREDICATE__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.PREDICATE__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.PREDICATE__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.PREDICATE__NEGATED_CONDITION:
-				return negatedCondition != NEGATED_CONDITION_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE__UPDATE_STATEMENT:
-				return getUpdateStatement() != null;
-			case SQLQueryModelPackage.PREDICATE__DELETE_STATEMENT:
-				return getDeleteStatement() != null;
-			case SQLQueryModelPackage.PREDICATE__TABLE_JOINED:
-				return getTableJoined() != null;
-			case SQLQueryModelPackage.PREDICATE__COMBINED_LEFT:
-				return getCombinedLeft() != null;
-			case SQLQueryModelPackage.PREDICATE__COMBINED_RIGHT:
-				return getCombinedRight() != null;
-			case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving() != null;
-			case SQLQueryModelPackage.PREDICATE__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere() != null;
-			case SQLQueryModelPackage.PREDICATE__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent() != null;
-			case SQLQueryModelPackage.PREDICATE__NEST:
-				return getNest() != null;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE__NEGATED_PREDICATE:
 				return negatedPredicate != NEGATED_PREDICATE_EDEFAULT;
 			case SQLQueryModelPackage.PREDICATE__HAS_SELECTIVITY:
@@ -534,7 +257,7 @@
 			case SQLQueryModelPackage.PREDICATE__SELECTIVITY_VALUE:
 				return SELECTIVITY_VALUE_EDEFAULT == null ? selectivityValue != null : !SELECTIVITY_VALUE_EDEFAULT.equals(selectivityValue);
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 	/**
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInImpl.java
index ea43a08..ee1c7b1 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: PredicateInImpl.java,v 1.3 2005/12/19 20:56:37 bpayton Exp $
+ * $Id: PredicateInImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -78,7 +78,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getPredicateIn();
+		return SQLQueryModelPackage.Literals.PREDICATE_IN;
 	}
 
 	/**
@@ -107,360 +107,53 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_IN__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__UPDATE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__DELETE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__TABLE_JOINED:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__COMBINED_LEFT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__COMBINED_RIGHT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_HAVING:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_WHERE:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__NEST:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN__NEST, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_IN__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__UPDATE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__DELETE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__TABLE_JOINED:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__COMBINED_LEFT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__COMBINED_RIGHT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_HAVING:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_WHERE:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__NEST:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN__NEST, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.PREDICATE_IN__UPDATE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CLAUSE, QueryUpdateStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__DELETE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CLAUSE, QueryDeleteStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__TABLE_JOINED:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.TABLE_JOINED__JOIN_CONDITION, TableJoined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__COMBINED_LEFT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__LEFT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__COMBINED_RIGHT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__RIGHT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_HAVING:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__HAVING_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_WHERE:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__WHERE_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.VALUE_EXPRESSION_CASE_SEARCH_CONTENT__SEARCH_CONDITION, ValueExpressionCaseSearchContent.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN__NEST:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_NESTED__NESTED_CONDITION, SearchConditionNested.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
-		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.PREDICATE_IN__NAME:
-				return getName();
-			case SQLQueryModelPackage.PREDICATE_IN__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.PREDICATE_IN__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.PREDICATE_IN__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.PREDICATE_IN__NEGATED_CONDITION:
-				return isNegatedCondition() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN__UPDATE_STATEMENT:
-				return getUpdateStatement();
-			case SQLQueryModelPackage.PREDICATE_IN__DELETE_STATEMENT:
-				return getDeleteStatement();
-			case SQLQueryModelPackage.PREDICATE_IN__TABLE_JOINED:
-				return getTableJoined();
-			case SQLQueryModelPackage.PREDICATE_IN__COMBINED_LEFT:
-				return getCombinedLeft();
-			case SQLQueryModelPackage.PREDICATE_IN__COMBINED_RIGHT:
-				return getCombinedRight();
-			case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving();
-			case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere();
-			case SQLQueryModelPackage.PREDICATE_IN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent();
-			case SQLQueryModelPackage.PREDICATE_IN__NEST:
-				return getNest();
-			case SQLQueryModelPackage.PREDICATE_IN__NEGATED_PREDICATE:
-				return isNegatedPredicate() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN__HAS_SELECTIVITY:
-				return isHasSelectivity() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN__SELECTIVITY_VALUE:
-				return getSelectivityValue();
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN__NOT_IN:
 				return isNotIn() ? Boolean.TRUE : Boolean.FALSE;
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__NEGATED_CONDITION:
-				setNegatedCondition(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__TABLE_JOINED:
-				setTableJoined((TableJoined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__NEST:
-				setNest((SearchConditionNested)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__NEGATED_PREDICATE:
-				setNegatedPredicate(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__HAS_SELECTIVITY:
-				setHasSelectivity(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__SELECTIVITY_VALUE:
-				setSelectivityValue((Integer)newValue);
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN__NOT_IN:
 				setNotIn(((Boolean)newValue).booleanValue());
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__NEGATED_CONDITION:
-				setNegatedCondition(NEGATED_CONDITION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__TABLE_JOINED:
-				setTableJoined((TableJoined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__NEST:
-				setNest((SearchConditionNested)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__NEGATED_PREDICATE:
-				setNegatedPredicate(NEGATED_PREDICATE_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__HAS_SELECTIVITY:
-				setHasSelectivity(HAS_SELECTIVITY_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN__SELECTIVITY_VALUE:
-				setSelectivityValue(SELECTIVITY_VALUE_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN__NOT_IN:
 				setNotIn(NOT_IN_EDEFAULT);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_IN__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.PREDICATE_IN__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_IN__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.PREDICATE_IN__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.PREDICATE_IN__NEGATED_CONDITION:
-				return negatedCondition != NEGATED_CONDITION_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN__UPDATE_STATEMENT:
-				return getUpdateStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_IN__DELETE_STATEMENT:
-				return getDeleteStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_IN__TABLE_JOINED:
-				return getTableJoined() != null;
-			case SQLQueryModelPackage.PREDICATE_IN__COMBINED_LEFT:
-				return getCombinedLeft() != null;
-			case SQLQueryModelPackage.PREDICATE_IN__COMBINED_RIGHT:
-				return getCombinedRight() != null;
-			case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving() != null;
-			case SQLQueryModelPackage.PREDICATE_IN__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere() != null;
-			case SQLQueryModelPackage.PREDICATE_IN__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent() != null;
-			case SQLQueryModelPackage.PREDICATE_IN__NEST:
-				return getNest() != null;
-			case SQLQueryModelPackage.PREDICATE_IN__NEGATED_PREDICATE:
-				return negatedPredicate != NEGATED_PREDICATE_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN__HAS_SELECTIVITY:
-				return hasSelectivity != HAS_SELECTIVITY_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN__SELECTIVITY_VALUE:
-				return SELECTIVITY_VALUE_EDEFAULT == null ? selectivityValue != null : !SELECTIVITY_VALUE_EDEFAULT.equals(selectivityValue);
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN__NOT_IN:
 				return notIn != NOT_IN_EDEFAULT;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 	/**
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueListImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueListImpl.java
index 4fc88c4..bd32ada 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueListImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueListImpl.java
@@ -1,7 +1,7 @@
 /**
  * </copyright>
  *
- * $Id: PredicateInValueListImpl.java,v 1.3 2005/12/19 20:56:36 bpayton Exp $
+ * $Id: PredicateInValueListImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -78,7 +78,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getPredicateInValueList();
+		return SQLQueryModelPackage.Literals.PREDICATE_IN_VALUE_LIST;
 	}
 
 	/**
@@ -138,104 +138,19 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__UPDATE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DELETE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__TABLE_JOINED:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_LEFT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_RIGHT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_HAVING:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_WHERE:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEST:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_LIST:
-					return ((InternalEList)getValueExprList()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR:
-					if (valueExpr != null)
-						msgs = ((InternalEObject)valueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR, null, msgs);
-					return basicSetValueExpr((QueryValueExpression)otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_LIST:
+				return ((InternalEList)getValueExprList()).basicAdd(otherEnd, msgs);
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR:
+				if (valueExpr != null)
+					msgs = ((InternalEObject)valueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR, null, msgs);
+				return basicSetValueExpr((QueryValueExpression)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__UPDATE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DELETE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__TABLE_JOINED:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_LEFT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_RIGHT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_HAVING:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_WHERE:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEST:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_LIST:
-					return ((InternalEList)getValueExprList()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR:
-					return basicSetValueExpr(null, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
@@ -243,153 +158,38 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__UPDATE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CLAUSE, QueryUpdateStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DELETE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CLAUSE, QueryDeleteStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__TABLE_JOINED:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.TABLE_JOINED__JOIN_CONDITION, TableJoined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_LEFT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__LEFT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_RIGHT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__RIGHT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_HAVING:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__HAVING_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_WHERE:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__WHERE_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.VALUE_EXPRESSION_CASE_SEARCH_CONTENT__SEARCH_CONDITION, ValueExpressionCaseSearchContent.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEST:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_NESTED__NESTED_CONDITION, SearchConditionNested.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_LIST:
+				return ((InternalEList)getValueExprList()).basicRemove(otherEnd, msgs);
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR:
+				return basicSetValueExpr(null, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NAME:
-				return getName();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEGATED_CONDITION:
-				return isNegatedCondition() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__UPDATE_STATEMENT:
-				return getUpdateStatement();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DELETE_STATEMENT:
-				return getDeleteStatement();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__TABLE_JOINED:
-				return getTableJoined();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_LEFT:
-				return getCombinedLeft();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_RIGHT:
-				return getCombinedRight();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEST:
-				return getNest();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEGATED_PREDICATE:
-				return isNegatedPredicate() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__HAS_SELECTIVITY:
-				return isHasSelectivity() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__SELECTIVITY_VALUE:
-				return getSelectivityValue();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NOT_IN:
-				return isNotIn() ? Boolean.TRUE : Boolean.FALSE;
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_LIST:
 				return getValueExprList();
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR:
 				return getValueExpr();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEGATED_CONDITION:
-				setNegatedCondition(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__TABLE_JOINED:
-				setTableJoined((TableJoined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEST:
-				setNest((SearchConditionNested)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEGATED_PREDICATE:
-				setNegatedPredicate(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__HAS_SELECTIVITY:
-				setHasSelectivity(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__SELECTIVITY_VALUE:
-				setSelectivityValue((Integer)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NOT_IN:
-				setNotIn(((Boolean)newValue).booleanValue());
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_LIST:
 				getValueExprList().clear();
 				getValueExprList().addAll((Collection)newValue);
@@ -398,73 +198,16 @@
 				setValueExpr((QueryValueExpression)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEGATED_CONDITION:
-				setNegatedCondition(NEGATED_CONDITION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__TABLE_JOINED:
-				setTableJoined((TableJoined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEST:
-				setNest((SearchConditionNested)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEGATED_PREDICATE:
-				setNegatedPredicate(NEGATED_PREDICATE_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__HAS_SELECTIVITY:
-				setHasSelectivity(HAS_SELECTIVITY_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__SELECTIVITY_VALUE:
-				setSelectivityValue(SELECTIVITY_VALUE_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NOT_IN:
-				setNotIn(NOT_IN_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_LIST:
 				getValueExprList().clear();
 				return;
@@ -472,60 +215,22 @@
 				setValueExpr((QueryValueExpression)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEGATED_CONDITION:
-				return negatedCondition != NEGATED_CONDITION_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__UPDATE_STATEMENT:
-				return getUpdateStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__DELETE_STATEMENT:
-				return getDeleteStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__TABLE_JOINED:
-				return getTableJoined() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_LEFT:
-				return getCombinedLeft() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__COMBINED_RIGHT:
-				return getCombinedRight() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEST:
-				return getNest() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NEGATED_PREDICATE:
-				return negatedPredicate != NEGATED_PREDICATE_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__HAS_SELECTIVITY:
-				return hasSelectivity != HAS_SELECTIVITY_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__SELECTIVITY_VALUE:
-				return SELECTIVITY_VALUE_EDEFAULT == null ? selectivityValue != null : !SELECTIVITY_VALUE_EDEFAULT.equals(selectivityValue);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__NOT_IN:
-				return notIn != NOT_IN_EDEFAULT;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR_LIST:
 				return valueExprList != null && !valueExprList.isEmpty();
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_LIST__VALUE_EXPR:
 				return valueExpr != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLPredicateInValueListImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueRowSelectImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueRowSelectImpl.java
index ac5a1d0..91fdb48 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueRowSelectImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueRowSelectImpl.java
@@ -1,7 +1,7 @@
 /**
  * </copyright>
  *
- * $Id: PredicateInValueRowSelectImpl.java,v 1.3 2005/12/19 20:56:37 bpayton Exp $
+ * $Id: PredicateInValueRowSelectImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -79,7 +79,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getPredicateInValueRowSelect();
+		return SQLQueryModelPackage.Literals.PREDICATE_IN_VALUE_ROW_SELECT;
 	}
 
 	/**
@@ -139,104 +139,19 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__UPDATE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DELETE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__TABLE_JOINED:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_LEFT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_RIGHT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_HAVING:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_WHERE:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEST:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_LIST:
-					return ((InternalEList)getValueExprList()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_EXPR:
-					if (queryExpr != null)
-						msgs = ((InternalEObject)queryExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_EXPR, null, msgs);
-					return basicSetQueryExpr((QueryExpressionRoot)otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_LIST:
+				return ((InternalEList)getValueExprList()).basicAdd(otherEnd, msgs);
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_EXPR:
+				if (queryExpr != null)
+					msgs = ((InternalEObject)queryExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_EXPR, null, msgs);
+				return basicSetQueryExpr((QueryExpressionRoot)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__UPDATE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DELETE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__TABLE_JOINED:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_LEFT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_RIGHT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_HAVING:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_WHERE:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEST:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_LIST:
-					return ((InternalEList)getValueExprList()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_EXPR:
-					return basicSetQueryExpr(null, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
@@ -244,153 +159,38 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__UPDATE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CLAUSE, QueryUpdateStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DELETE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CLAUSE, QueryDeleteStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__TABLE_JOINED:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.TABLE_JOINED__JOIN_CONDITION, TableJoined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_LEFT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__LEFT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_RIGHT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__RIGHT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_HAVING:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__HAVING_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_WHERE:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__WHERE_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.VALUE_EXPRESSION_CASE_SEARCH_CONTENT__SEARCH_CONDITION, ValueExpressionCaseSearchContent.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEST:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_NESTED__NESTED_CONDITION, SearchConditionNested.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_LIST:
+				return ((InternalEList)getValueExprList()).basicRemove(otherEnd, msgs);
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_EXPR:
+				return basicSetQueryExpr(null, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NAME:
-				return getName();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEGATED_CONDITION:
-				return isNegatedCondition() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__UPDATE_STATEMENT:
-				return getUpdateStatement();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DELETE_STATEMENT:
-				return getDeleteStatement();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__TABLE_JOINED:
-				return getTableJoined();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_LEFT:
-				return getCombinedLeft();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_RIGHT:
-				return getCombinedRight();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEST:
-				return getNest();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEGATED_PREDICATE:
-				return isNegatedPredicate() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__HAS_SELECTIVITY:
-				return isHasSelectivity() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__SELECTIVITY_VALUE:
-				return getSelectivityValue();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NOT_IN:
-				return isNotIn() ? Boolean.TRUE : Boolean.FALSE;
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_LIST:
 				return getValueExprList();
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_EXPR:
 				return getQueryExpr();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEGATED_CONDITION:
-				setNegatedCondition(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__TABLE_JOINED:
-				setTableJoined((TableJoined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEST:
-				setNest((SearchConditionNested)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEGATED_PREDICATE:
-				setNegatedPredicate(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__HAS_SELECTIVITY:
-				setHasSelectivity(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__SELECTIVITY_VALUE:
-				setSelectivityValue((Integer)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NOT_IN:
-				setNotIn(((Boolean)newValue).booleanValue());
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_LIST:
 				getValueExprList().clear();
 				getValueExprList().addAll((Collection)newValue);
@@ -399,73 +199,16 @@
 				setQueryExpr((QueryExpressionRoot)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEGATED_CONDITION:
-				setNegatedCondition(NEGATED_CONDITION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__TABLE_JOINED:
-				setTableJoined((TableJoined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEST:
-				setNest((SearchConditionNested)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEGATED_PREDICATE:
-				setNegatedPredicate(NEGATED_PREDICATE_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__HAS_SELECTIVITY:
-				setHasSelectivity(HAS_SELECTIVITY_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__SELECTIVITY_VALUE:
-				setSelectivityValue(SELECTIVITY_VALUE_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NOT_IN:
-				setNotIn(NOT_IN_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_LIST:
 				getValueExprList().clear();
 				return;
@@ -473,60 +216,22 @@
 				setQueryExpr((QueryExpressionRoot)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEGATED_CONDITION:
-				return negatedCondition != NEGATED_CONDITION_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__UPDATE_STATEMENT:
-				return getUpdateStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__DELETE_STATEMENT:
-				return getDeleteStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__TABLE_JOINED:
-				return getTableJoined() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_LEFT:
-				return getCombinedLeft() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__COMBINED_RIGHT:
-				return getCombinedRight() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEST:
-				return getNest() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NEGATED_PREDICATE:
-				return negatedPredicate != NEGATED_PREDICATE_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__HAS_SELECTIVITY:
-				return hasSelectivity != HAS_SELECTIVITY_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__SELECTIVITY_VALUE:
-				return SELECTIVITY_VALUE_EDEFAULT == null ? selectivityValue != null : !SELECTIVITY_VALUE_EDEFAULT.equals(selectivityValue);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__NOT_IN:
-				return notIn != NOT_IN_EDEFAULT;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__VALUE_EXPR_LIST:
 				return valueExprList != null && !valueExprList.isEmpty();
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_ROW_SELECT__QUERY_EXPR:
 				return queryExpr != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLPredicateInValueRowSelectImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueSelectImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueSelectImpl.java
index 25e5cc9..aa725d5 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueSelectImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateInValueSelectImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: PredicateInValueSelectImpl.java,v 1.3 2005/12/19 20:56:37 bpayton Exp $
+ * $Id: PredicateInValueSelectImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -78,7 +78,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getPredicateInValueSelect();
+		return SQLQueryModelPackage.Literals.PREDICATE_IN_VALUE_SELECT;
 	}
 
 	/**
@@ -169,106 +169,21 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__UPDATE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DELETE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__TABLE_JOINED:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_LEFT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_RIGHT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_HAVING:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_WHERE:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEST:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_EXPR:
-					if (queryExpr != null)
-						msgs = ((InternalEObject)queryExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_EXPR, null, msgs);
-					return basicSetQueryExpr((QueryExpressionRoot)otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR:
-					if (valueExpr != null)
-						msgs = ((InternalEObject)valueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR, null, msgs);
-					return basicSetValueExpr((QueryValueExpression)otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_EXPR:
+				if (queryExpr != null)
+					msgs = ((InternalEObject)queryExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_EXPR, null, msgs);
+				return basicSetQueryExpr((QueryExpressionRoot)otherEnd, msgs);
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR:
+				if (valueExpr != null)
+					msgs = ((InternalEObject)valueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR, null, msgs);
+				return basicSetValueExpr((QueryValueExpression)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__UPDATE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DELETE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__TABLE_JOINED:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_LEFT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_RIGHT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_HAVING:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_WHERE:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEST:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_EXPR:
-					return basicSetQueryExpr(null, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR:
-					return basicSetValueExpr(null, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
@@ -276,153 +191,38 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__UPDATE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CLAUSE, QueryUpdateStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DELETE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CLAUSE, QueryDeleteStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__TABLE_JOINED:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.TABLE_JOINED__JOIN_CONDITION, TableJoined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_LEFT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__LEFT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_RIGHT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__RIGHT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_HAVING:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__HAVING_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_WHERE:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__WHERE_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.VALUE_EXPRESSION_CASE_SEARCH_CONTENT__SEARCH_CONDITION, ValueExpressionCaseSearchContent.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEST:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_NESTED__NESTED_CONDITION, SearchConditionNested.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_EXPR:
+				return basicSetQueryExpr(null, msgs);
+			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR:
+				return basicSetValueExpr(null, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NAME:
-				return getName();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEGATED_CONDITION:
-				return isNegatedCondition() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__UPDATE_STATEMENT:
-				return getUpdateStatement();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DELETE_STATEMENT:
-				return getDeleteStatement();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__TABLE_JOINED:
-				return getTableJoined();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_LEFT:
-				return getCombinedLeft();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_RIGHT:
-				return getCombinedRight();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEST:
-				return getNest();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEGATED_PREDICATE:
-				return isNegatedPredicate() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__HAS_SELECTIVITY:
-				return isHasSelectivity() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__SELECTIVITY_VALUE:
-				return getSelectivityValue();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NOT_IN:
-				return isNotIn() ? Boolean.TRUE : Boolean.FALSE;
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_EXPR:
 				return getQueryExpr();
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR:
 				return getValueExpr();
 		}
-		return eDynamicGet(eFeature, resolve);
+		return super.eGet(featureID, resolve, coreType);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__EANNOTATIONS:
-				getEAnnotations().clear();
-				getEAnnotations().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NAME:
-				setName((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DEPENDENCIES:
-				getDependencies().clear();
-				getDependencies().addAll((Collection)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DESCRIPTION:
-				setDescription((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__LABEL:
-				setLabel((String)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEGATED_CONDITION:
-				setNegatedCondition(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__TABLE_JOINED:
-				setTableJoined((TableJoined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEST:
-				setNest((SearchConditionNested)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEGATED_PREDICATE:
-				setNegatedPredicate(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__HAS_SELECTIVITY:
-				setHasSelectivity(((Boolean)newValue).booleanValue());
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__SELECTIVITY_VALUE:
-				setSelectivityValue((Integer)newValue);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NOT_IN:
-				setNotIn(((Boolean)newValue).booleanValue());
-				return;
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_EXPR:
 				setQueryExpr((QueryExpressionRoot)newValue);
 				return;
@@ -430,73 +230,16 @@
 				setValueExpr((QueryValueExpression)newValue);
 				return;
 		}
-		eDynamicSet(eFeature, newValue);
+		super.eSet(featureID, newValue);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public void eUnset(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__EANNOTATIONS:
-				getEAnnotations().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DEPENDENCIES:
-				getDependencies().clear();
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DESCRIPTION:
-				setDescription(DESCRIPTION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__LABEL:
-				setLabel(LABEL_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEGATED_CONDITION:
-				setNegatedCondition(NEGATED_CONDITION_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__UPDATE_STATEMENT:
-				setUpdateStatement((QueryUpdateStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DELETE_STATEMENT:
-				setDeleteStatement((QueryDeleteStatement)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__TABLE_JOINED:
-				setTableJoined((TableJoined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_LEFT:
-				setCombinedLeft((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_RIGHT:
-				setCombinedRight((SearchConditionCombined)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_HAVING:
-				setQuerySelectHaving((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_WHERE:
-				setQuerySelectWhere((QuerySelect)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				setValueExprCaseSearchContent((ValueExpressionCaseSearchContent)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEST:
-				setNest((SearchConditionNested)null);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEGATED_PREDICATE:
-				setNegatedPredicate(NEGATED_PREDICATE_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__HAS_SELECTIVITY:
-				setHasSelectivity(HAS_SELECTIVITY_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__SELECTIVITY_VALUE:
-				setSelectivityValue(SELECTIVITY_VALUE_EDEFAULT);
-				return;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NOT_IN:
-				setNotIn(NOT_IN_EDEFAULT);
-				return;
+	public void eUnset(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_EXPR:
 				setQueryExpr((QueryExpressionRoot)null);
 				return;
@@ -504,60 +247,22 @@
 				setValueExpr((QueryValueExpression)null);
 				return;
 		}
-		eDynamicUnset(eFeature);
+		super.eUnset(featureID);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__EANNOTATIONS:
-				return eAnnotations != null && !eAnnotations.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DEPENDENCIES:
-				return dependencies != null && !dependencies.isEmpty();
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DESCRIPTION:
-				return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__LABEL:
-				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEGATED_CONDITION:
-				return negatedCondition != NEGATED_CONDITION_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__UPDATE_STATEMENT:
-				return getUpdateStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__DELETE_STATEMENT:
-				return getDeleteStatement() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__TABLE_JOINED:
-				return getTableJoined() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_LEFT:
-				return getCombinedLeft() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__COMBINED_RIGHT:
-				return getCombinedRight() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_HAVING:
-				return getQuerySelectHaving() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_SELECT_WHERE:
-				return getQuerySelectWhere() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR_CASE_SEARCH_CONTENT:
-				return getValueExprCaseSearchContent() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEST:
-				return getNest() != null;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NEGATED_PREDICATE:
-				return negatedPredicate != NEGATED_PREDICATE_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__HAS_SELECTIVITY:
-				return hasSelectivity != HAS_SELECTIVITY_EDEFAULT;
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__SELECTIVITY_VALUE:
-				return SELECTIVITY_VALUE_EDEFAULT == null ? selectivityValue != null : !SELECTIVITY_VALUE_EDEFAULT.equals(selectivityValue);
-			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__NOT_IN:
-				return notIn != NOT_IN_EDEFAULT;
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__QUERY_EXPR:
 				return queryExpr != null;
 			case SQLQueryModelPackage.PREDICATE_IN_VALUE_SELECT__VALUE_EXPR:
 				return valueExpr != null;
 		}
-		return eDynamicIsSet(eFeature);
+		return super.eIsSet(featureID);
 	}
 
 } //SQLPredicateInValueSelectImpl
diff --git a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateIsNullImpl.java b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateIsNullImpl.java
index fa18cfb..60a12de 100644
--- a/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateIsNullImpl.java
+++ b/plugins/org.eclipse.datatools.modelbase.sql.query/src/org/eclipse/datatools/modelbase/sql/query/impl/PredicateIsNullImpl.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: PredicateIsNullImpl.java,v 1.3 2005/12/19 20:56:37 bpayton Exp $
+ * $Id: PredicateIsNullImpl.java,v 1.4 2005/12/22 22:18:48 bpayton Exp $
  */
 package org.eclipse.datatools.modelbase.sql.query.impl;
 
@@ -87,7 +87,7 @@
 	 * @generated
 	 */
     protected EClass eStaticClass() {
-		return SQLQueryModelPackage.eINSTANCE.getPredicateIsNull();
+		return SQLQueryModelPackage.Literals.PREDICATE_IS_NULL;
 	}
 
 	/**
@@ -156,100 +156,17 @@
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicAdd(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__UPDATE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IS_NULL__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__DELETE_STATEMENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IS_NULL__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__TABLE_JOINED:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IS_NULL__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__COMBINED_LEFT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IS_NULL__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__COMBINED_RIGHT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IS_NULL__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__QUERY_SELECT_HAVING:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IS_NULL__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__QUERY_SELECT_WHERE:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IS_NULL__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IS_NULL__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__NEST:
-					if (eContainer != null)
-						msgs = eBasicRemoveFromContainer(msgs);
-					return eBasicSetContainer(otherEnd, SQLQueryModelPackage.PREDICATE_IS_NULL__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__VALUE_EXPR:
-					if (valueExpr != null)
-						msgs = ((InternalEObject)valueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_IS_NULL__VALUE_EXPR, null, msgs);
-					return basicSetValueExpr((QueryValueExpression)otherEnd, msgs);
-				default:
-					return eDynamicInverseAdd(otherEnd, featureID, baseClass, msgs);
-			}
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_IS_NULL__VALUE_EXPR:
+				if (valueExpr != null)
+					msgs = ((InternalEObject)valueExpr).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SQLQueryModelPackage.PREDICATE_IS_NULL__VALUE_EXPR, null, msgs);
+				return basicSetValueExpr((QueryValueExpression)otherEnd, msgs);
 		}
-		if (eContainer != null)
-			msgs = eBasicRemoveFromContainer(msgs);
-		return eBasicSetContainer(otherEnd, featureID, msgs);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-	 * @generated
-	 */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-		if (featureID >= 0) {
-			switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__EANNOTATIONS:
-					return ((InternalEList)getEAnnotations()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__DEPENDENCIES:
-					return ((InternalEList)getDependencies()).basicRemove(otherEnd, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__UPDATE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IS_NULL__UPDATE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__DELETE_STATEMENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IS_NULL__DELETE_STATEMENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__TABLE_JOINED:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IS_NULL__TABLE_JOINED, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__COMBINED_LEFT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IS_NULL__COMBINED_LEFT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__COMBINED_RIGHT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IS_NULL__COMBINED_RIGHT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__QUERY_SELECT_HAVING:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IS_NULL__QUERY_SELECT_HAVING, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__QUERY_SELECT_WHERE:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IS_NULL__QUERY_SELECT_WHERE, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IS_NULL__VALUE_EXPR_CASE_SEARCH_CONTENT, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__NEST:
-					return eBasicSetContainer(null, SQLQueryModelPackage.PREDICATE_IS_NULL__NEST, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__VALUE_EXPR:
-					return basicSetValueExpr(null, msgs);
-				default:
-					return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-			}
-		}
-		return eBasicSetContainer(null, featureID, msgs);
+		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
 
 	/**
@@ -257,148 +174,36 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain eBasicRemoveFromContainer(NotificationChain msgs) {
-		if (eContainerFeatureID >= 0) {
-			switch (eContainerFeatureID) {
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__UPDATE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_UPDATE_STATEMENT__WHERE_CLAUSE, QueryUpdateStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__DELETE_STATEMENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_DELETE_STATEMENT__WHERE_CLAUSE, QueryDeleteStatement.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__TABLE_JOINED:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.TABLE_JOINED__JOIN_CONDITION, TableJoined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__COMBINED_LEFT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__LEFT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__COMBINED_RIGHT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_COMBINED__RIGHT_CONDITION, SearchConditionCombined.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__QUERY_SELECT_HAVING:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__HAVING_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__QUERY_SELECT_WHERE:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.QUERY_SELECT__WHERE_CLAUSE, QuerySelect.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__VALUE_EXPR_CASE_SEARCH_CONTENT:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.VALUE_EXPRESSION_CASE_SEARCH_CONTENT__SEARCH_CONDITION, ValueExpressionCaseSearchContent.class, msgs);
-				case SQLQueryModelPackage.PREDICATE_IS_NULL__NEST:
-					return eContainer.eInverseRemove(this, SQLQueryModelPackage.SEARCH_CONDITION_NESTED__NESTED_CONDITION, SearchConditionNested.class, msgs);
-				default:
-					return eDynamicBasicRemoveFromContainer(msgs);
-			}
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case SQLQueryModelPackage.PREDICATE_IS_NULL__VALUE_EXPR:
+				return basicSetValueExpr(null, msgs);
 		}
-		return eContainer.eInverseRemove(this, EOPPOSITE_FEATURE_BASE - eContainerFeatureID, null, msgs);
+		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-		switch (eDerivedStructuralFeatureID(eFeature)) {
-			case SQLQueryModelPackage.PREDICATE_IS_NULL__EANNOTATIONS:
-				return getEAnnotations();
-			case SQLQueryModelPackage.PREDICATE_IS_NULL__NAME:
-				return getName();
-			case SQLQueryModelPackage.PREDICATE_IS_NULL__DEPENDENCIES:
-				return getDependencies();
-			case SQLQueryModelPackage.PREDICATE_IS_NULL__DESCRIPTION:
-				return getDescription();
-			case SQLQueryModelPackage.PREDICATE_IS_NULL__LABEL:
-				return getLabel();
-			case SQLQueryModelPackage.PREDICATE_IS_NULL__NEGATED_CONDITION:
-				return isNegatedCondition() ? Boolean.TRUE : Boolean.FALSE;
-			case SQLQueryModelPackage.PREDICATE_IS_NULL__UPDATE_STATEMENT:
-				return getUpdateStatement();
-			case SQLQueryModelPackage.PREDICATE_IS_NULL__DELETE_STATEMENT:
-				return getDeleteStatement();
-			case SQLQueryModelPackage.PREDICATE_IS_NULL__TABLE_JOINED:
-				return getTableJoined();
-			case SQLQueryModelPackage.PREDICATE_IS_NULL__COMBINED_LEFT:
-				return getCombinedLeft();
-			c