[550053] No change regeneration of QVTOperational.genmodel
diff --git a/plugins/org.eclipse.m2m.qvt.oml/META-INF/MANIFEST.MF b/plugins/org.eclipse.m2m.qvt.oml/META-INF/MANIFEST.MF
index 85bc057..7f98688 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.m2m.qvt.oml/META-INF/MANIFEST.MF
@@ -3,6 +3,7 @@
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.m2m.qvt.oml;singleton:=true
 Bundle-Version: 3.9.3.qualifier
+Bundle-ClassPath: .
 Bundle-Activator: org.eclipse.m2m.internal.qvt.oml.QvtPlugin$Implementation
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
@@ -39,7 +40,8 @@
    org.eclipse.m2m.qvt.oml.ocl,
    org.eclipse.m2m.qvt.oml.runtime.jdt,
    org.eclipse.m2m.tests.qvt.oml",
- org.eclipse.m2m.internal.qvt.oml.blackbox.java;x-friends:="org.eclipse.m2m.qvt.oml.runtime.jdt",
+ org.eclipse.m2m.internal.qvt.oml.blackbox.java;
+  x-friends:="org.eclipse.m2m.qvt.oml.runtime.jdt",
  org.eclipse.m2m.internal.qvt.oml.compiler;
   x-friends:="org.eclipse.m2m.qvt.oml.editor.ui,
    org.eclipse.m2m.tests.qvt.oml,
@@ -65,8 +67,12 @@
    org.eclipse.m2m.tests.qvt.oml,
    org.eclipse.m2m.qvt.oml.debug.core",
  org.eclipse.m2m.internal.qvt.oml.expressions.impl;x-internal:=true,
- org.eclipse.m2m.internal.qvt.oml.expressions.util;x-friends:="org.eclipse.m2m.qvt.oml.runtime",
- org.eclipse.m2m.internal.qvt.oml.library;x-friends:="org.eclipse.m2m.qvt.oml.runtime,org.eclipse.m2m.tests.qvt.oml,org.eclipse.m2m.qvt.oml.debug.core",
+ org.eclipse.m2m.internal.qvt.oml.expressions.util;
+  x-friends:="org.eclipse.m2m.qvt.oml.runtime",
+ org.eclipse.m2m.internal.qvt.oml.library;
+  x-friends:="org.eclipse.m2m.qvt.oml.runtime,
+   org.eclipse.m2m.tests.qvt.oml,
+   org.eclipse.m2m.qvt.oml.debug.core",
  org.eclipse.m2m.internal.qvt.oml.stdlib;
   x-friends:="org.eclipse.m2m.qvt.oml.runtime,
    org.eclipse.m2m.qvt.oml.ocl,
@@ -80,21 +86,24 @@
    org.eclipse.m2m.qvt.oml.runtime.ui,
    org.eclipse.m2m.qvt.oml.trace.edit",
  org.eclipse.m2m.internal.qvt.oml.trace.impl;x-internal:=true,
- org.eclipse.m2m.internal.qvt.oml.trace.util;x-friends:="org.eclipse.m2m.qvt.oml.trace.edit",
+ org.eclipse.m2m.internal.qvt.oml.trace.util;
+  x-friends:="org.eclipse.m2m.qvt.oml.trace.edit",
  org.eclipse.m2m.qvt.oml,
  org.eclipse.m2m.qvt.oml.blackbox.java,
  org.eclipse.m2m.qvt.oml.util
-Comment: org.eclipse.equinox.common 3.8 required to support org.eclipse.core.runtime.SubMonitor.split() and done(), see Bug 536601
+Comment: org.eclipse.equinox.common 3.8 required to support org.eclipse.core.runtime.SubMonitor.split() and done(),
+  see Bug 536601
 Require-Bundle: org.eclipse.equinox.common;bundle-version="[3.8.0,4.0.0)",
  org.eclipse.core.runtime;bundle-version="[3.4.0,4.0.0)",
  org.eclipse.core.resources;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.emf.ecore;bundle-version="[2.8.0,3.0.0)",
+ org.eclipse.emf.ecore;bundle-version="[2.8.0,3.0.0)";visibility:=reexport,
  org.eclipse.emf.ecore.xmi;bundle-version="[2.5.0,3.0.0)",
  org.eclipse.emf.ecore.change;bundle-version="[2.4.0,3.0.0)",
  org.eclipse.m2m.qvt.oml.common;bundle-version="[3.1.0,4.0.0)";visibility:=reexport,
  org.eclipse.m2m.qvt.oml.cst.parser;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
  org.eclipse.ocl.ecore;bundle-version="[3.1.0,4.0.0)";visibility:=reexport,
- org.eclipse.m2m.qvt.oml.ecore.imperativeocl;bundle-version="[3.0.0,4.0.0)";visibility:=reexport
+ org.eclipse.m2m.qvt.oml.ecore.imperativeocl;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
+ org.eclipse.ocl;visibility:=reexport
 Eclipse-BuddyPolicy: registered
 Bundle-ActivationPolicy: lazy
 Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Constructor.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Constructor.java
index 6b60701..30c1860 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Constructor.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Constructor.java
@@ -36,7 +36,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitConstructor(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ConstructorBody.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ConstructorBody.java
index 76a09a1..4dba49a 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ConstructorBody.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ConstructorBody.java
@@ -37,7 +37,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitConstructorBody(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ContextualProperty.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ContextualProperty.java
index 141d41d..7981224 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ContextualProperty.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ContextualProperty.java
@@ -25,12 +25,12 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ContextualProperty#getContext <em>Context</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ContextualProperty#getInitExpression <em>Init Expression</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ContextualProperty#getOverridden <em>Overridden</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getContextualProperty()
  * @model
@@ -125,7 +125,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitContextualProperty(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/DirectionKind.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/DirectionKind.java
index 3479434..3848d98 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/DirectionKind.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/DirectionKind.java
@@ -134,6 +134,8 @@
 	 * Returns the '<em><b>Direction Kind</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
+	 * @param literal the literal.
+	 * @return the matching enumerator or <code>null</code>.
 	 * @generated
 	 */
 	public static DirectionKind get(String literal) {
@@ -150,6 +152,8 @@
 	 * Returns the '<em><b>Direction Kind</b></em>' literal with the specified name.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
+	 * @param name the name.
+	 * @return the matching enumerator or <code>null</code>.
 	 * @generated
 	 */
 	public static DirectionKind getByName(String name) {
@@ -166,6 +170,8 @@
 	 * Returns the '<em><b>Direction Kind</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
+	 * @param value the integer value.
+	 * @return the matching enumerator or <code>null</code>.
 	 * @generated
 	 */
 	public static DirectionKind get(int value) {
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/EntryOperation.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/EntryOperation.java
index a878520..22380e6 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/EntryOperation.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/EntryOperation.java
@@ -37,7 +37,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitEntryOperation(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Helper.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Helper.java
index 0e3323a..45e4c70 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Helper.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Helper.java
@@ -20,10 +20,10 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.Helper#isIsQuery <em>Is Query</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getHelper()
  * @model
@@ -66,7 +66,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitHelper(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImperativeCallExp.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImperativeCallExp.java
index 1d7efd9..be986cf 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImperativeCallExp.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImperativeCallExp.java
@@ -23,10 +23,10 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ImperativeCallExp#isIsVirtual <em>Is Virtual</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getImperativeCallExp()
  * @model
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImperativeOperation.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImperativeOperation.java
index 5714a38..97ce7ac 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImperativeOperation.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImperativeOperation.java
@@ -22,6 +22,7 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ImperativeOperation#getBody <em>Body</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ImperativeOperation#getContext <em>Context</em>}</li>
@@ -29,7 +30,6 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ImperativeOperation#getOverridden <em>Overridden</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ImperativeOperation#getResult <em>Result</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getImperativeOperation()
  * @model
@@ -172,7 +172,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitImperativeOperation(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImportKind.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImportKind.java
index 8bbfa93..07671c8 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImportKind.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ImportKind.java
@@ -110,6 +110,8 @@
 	 * Returns the '<em><b>Import Kind</b></em>' literal with the specified literal value.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
+	 * @param literal the literal.
+	 * @return the matching enumerator or <code>null</code>.
 	 * @generated
 	 */
 	public static ImportKind get(String literal) {
@@ -126,6 +128,8 @@
 	 * Returns the '<em><b>Import Kind</b></em>' literal with the specified name.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
+	 * @param name the name.
+	 * @return the matching enumerator or <code>null</code>.
 	 * @generated
 	 */
 	public static ImportKind getByName(String name) {
@@ -142,6 +146,8 @@
 	 * Returns the '<em><b>Import Kind</b></em>' literal with the specified integer value.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
+	 * @param value the integer value.
+	 * @return the matching enumerator or <code>null</code>.
 	 * @generated
 	 */
 	public static ImportKind get(int value) {
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Library.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Library.java
index 4b530b3..032f082 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Library.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Library.java
@@ -23,7 +23,7 @@
  * @model
  * @generated
  */
-public interface Library extends Module {
+public interface Library extends org.eclipse.m2m.internal.qvt.oml.expressions.Module {
 	/**
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
@@ -34,7 +34,7 @@
     /**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitLibrary(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingBody.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingBody.java
index ef14a9a..3ea6ac6 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingBody.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingBody.java
@@ -22,11 +22,11 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.MappingBody#getEndSection <em>End Section</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.MappingBody#getInitSection <em>Init Section</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getMappingBody()
  * @model
@@ -75,7 +75,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitMappingBody(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingCallExp.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingCallExp.java
index 37a500a..6f6ce20 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingCallExp.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingCallExp.java
@@ -20,10 +20,10 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.MappingCallExp#isIsStrict <em>Is Strict</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getMappingCallExp()
  * @model
@@ -66,7 +66,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitMappingCallExp(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingOperation.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingOperation.java
index 7977ded..0e40baf 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingOperation.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingOperation.java
@@ -22,6 +22,7 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.MappingOperation#getDisjunct <em>Disjunct</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.MappingOperation#getInherited <em>Inherited</em>}</li>
@@ -29,7 +30,6 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.MappingOperation#getWhen <em>When</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.MappingOperation#getWhere <em>Where</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getMappingOperation()
  * @model
@@ -137,7 +137,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitMappingOperation(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingParameter.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingParameter.java
index 570c681..ec994ff 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingParameter.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/MappingParameter.java
@@ -21,10 +21,10 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.MappingParameter#getExtent <em>Extent</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getMappingParameter()
  * @model
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ModelType.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ModelType.java
index 1e8733d..5611ea5 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ModelType.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ModelType.java
@@ -26,12 +26,12 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ModelType#getAdditionalCondition <em>Additional Condition</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ModelType#getConformanceKind <em>Conformance Kind</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ModelType#getMetamodel <em>Metamodel</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getModelType()
  * @model
@@ -112,7 +112,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitModelType(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Module.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Module.java
index fca4159..4aa0b93 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Module.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/Module.java
@@ -26,6 +26,7 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.Module#getConfigProperty <em>Config Property</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.Module#getEntry <em>Entry</em>}</li>
@@ -35,7 +36,6 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.Module#getOwnedVariable <em>Owned Variable</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.Module#getUsedModelType <em>Used Model Type</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getModule()
  * @model
@@ -214,7 +214,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitModule(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ModuleImport.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ModuleImport.java
index b499462..6dc3729 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ModuleImport.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ModuleImport.java
@@ -22,13 +22,13 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport#getBinding <em>Binding</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport#getImportedModule <em>Imported Module</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport#getKind <em>Kind</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport#getModule <em>Module</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getModuleImport()
  * @model
@@ -68,13 +68,13 @@
 	 * </p>
 	 * <!-- end-user-doc -->
 	 * @return the value of the '<em>Module</em>' container reference.
-	 * @see #setModule(Module)
+	 * @see #setModule(org.eclipse.m2m.internal.qvt.oml.expressions.Module)
 	 * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getModuleImport_Module()
 	 * @see org.eclipse.m2m.internal.qvt.oml.expressions.Module#getModuleImport
 	 * @model opposite="moduleImport"
 	 * @generated
 	 */
-	Module getModule();
+	org.eclipse.m2m.internal.qvt.oml.expressions.Module getModule();
 
 	/**
 	 * Sets the value of the '{@link org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport#getModule <em>Module</em>}' container reference.
@@ -84,7 +84,7 @@
 	 * @see #getModule()
 	 * @generated
 	 */
-	void setModule(Module value);
+	void setModule(org.eclipse.m2m.internal.qvt.oml.expressions.Module value);
 
 	/**
 	 * Returns the value of the '<em><b>Imported Module</b></em>' reference.
@@ -95,12 +95,12 @@
 	 * </p>
 	 * <!-- end-user-doc -->
 	 * @return the value of the '<em>Imported Module</em>' reference.
-	 * @see #setImportedModule(Module)
+	 * @see #setImportedModule(org.eclipse.m2m.internal.qvt.oml.expressions.Module)
 	 * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getModuleImport_ImportedModule()
 	 * @model required="true"
 	 * @generated
 	 */
-	Module getImportedModule();
+	org.eclipse.m2m.internal.qvt.oml.expressions.Module getImportedModule();
 
 	/**
 	 * Sets the value of the '{@link org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport#getImportedModule <em>Imported Module</em>}' reference.
@@ -110,7 +110,7 @@
 	 * @see #getImportedModule()
 	 * @generated
 	 */
-	void setImportedModule(Module value);
+	void setImportedModule(org.eclipse.m2m.internal.qvt.oml.expressions.Module value);
 
 	/**
 	 * Returns the value of the '<em><b>Kind</b></em>' attribute.
@@ -144,7 +144,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitModuleImport(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ObjectExp.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ObjectExp.java
index 190c593..c66de50 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ObjectExp.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ObjectExp.java
@@ -22,11 +22,11 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ObjectExp#getBody <em>Body</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ObjectExp#getReferredObject <em>Referred Object</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getObjectExp()
  * @model
@@ -95,7 +95,7 @@
 				/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitObjectExp(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/OperationBody.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/OperationBody.java
index 3530b38..284719d 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/OperationBody.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/OperationBody.java
@@ -24,12 +24,12 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.OperationBody#getContent <em>Content</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.OperationBody#getOperation <em>Operation</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.OperationBody#getVariable <em>Variable</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getOperationBody()
  * @model
@@ -106,7 +106,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitOperationBody(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/OperationalTransformation.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/OperationalTransformation.java
index cb704a5..4147fad 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/OperationalTransformation.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/OperationalTransformation.java
@@ -25,18 +25,18 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.OperationalTransformation#getIntermediateClass <em>Intermediate Class</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.OperationalTransformation#getIntermediateProperty <em>Intermediate Property</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.OperationalTransformation#getModelParameter <em>Model Parameter</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getOperationalTransformation()
  * @model
  * @generated
  */
-public interface OperationalTransformation extends Module {
+public interface OperationalTransformation extends org.eclipse.m2m.internal.qvt.oml.expressions.Module {
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ResolveExp.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ResolveExp.java
index fa09db5..58fefe2 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ResolveExp.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ResolveExp.java
@@ -25,6 +25,7 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ResolveExp#getCondition <em>Condition</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ResolveExp#isIsDeferred <em>Is Deferred</em>}</li>
@@ -32,7 +33,6 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ResolveExp#isOne <em>One</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ResolveExp#getTarget <em>Target</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getResolveExp()
  * @model
@@ -179,7 +179,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitResolveExp(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ResolveInExp.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ResolveInExp.java
index 7751c42..1e987b2 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ResolveInExp.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/ResolveInExp.java
@@ -22,10 +22,10 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.ResolveInExp#getInMapping <em>In Mapping</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getResolveInExp()
  * @model
@@ -68,7 +68,7 @@
 				/**
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitResolveInExp(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
     <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/VarParameter.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/VarParameter.java
index 8a32ad0..ce733a6 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/VarParameter.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/VarParameter.java
@@ -22,12 +22,12 @@
  *
  * <p>
  * The following features are supported:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.VarParameter#getCtxOwner <em>Ctx Owner</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.VarParameter#getKind <em>Kind</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.VarParameter#getResOwner <em>Res Owner</em>}</li>
  * </ul>
- * </p>
  *
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage#getVarParameter()
  * @model
@@ -129,7 +129,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {\r\n  @SuppressWarnings(\"unchecked\")    \t\t\r\n  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    \t\r\n  return visitorExt.visitVarParameter(this);\r\n}\r\nreturn org.eclipse.m2m.internal.qvt.oml.expressions.util.ForeignVisitorDefaultValue.getDefaultValueForVisitor(v);'"
+	 * @model
 	 * @generated
 	 */
 	<T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v);
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ConstructorBodyImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ConstructorBodyImpl.java
index 5aecae2..0d81562 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ConstructorBodyImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ConstructorBodyImpl.java
@@ -22,8 +22,6 @@
  * <!-- begin-user-doc -->
  * An implementation of the model object '<em><b>Constructor Body</b></em>'.
  * <!-- end-user-doc -->
- * <p>
- * </p>
  *
  * @generated
  */
@@ -60,7 +58,7 @@
 	 * @generated
 	 */
 	@Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ConstructorImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ConstructorImpl.java
index 4f9e555..c703ba2 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ConstructorImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ConstructorImpl.java
@@ -22,8 +22,6 @@
  * <!-- begin-user-doc -->
  * An implementation of the model object '<em><b>Constructor</b></em>'.
  * <!-- end-user-doc -->
- * <p>
- * </p>
  *
  * @generated
  */
@@ -60,7 +58,7 @@
 	 * @generated
 	 */
 	@Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ContextualPropertyImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ContextualPropertyImpl.java
index 53b2769..bef7814 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ContextualPropertyImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ContextualPropertyImpl.java
@@ -35,6 +35,7 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ContextualPropertyImpl#getStartPosition <em>Start Position</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ContextualPropertyImpl#getEndPosition <em>End Position</em>}</li>
@@ -42,7 +43,6 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ContextualPropertyImpl#getInitExpression <em>Init Expression</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ContextualPropertyImpl#getOverridden <em>Overridden</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -309,7 +309,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
@@ -495,7 +495,7 @@
 	public String toString() {
 		if (eIsProxy()) return super.toString();
 
-		StringBuffer result = new StringBuffer(super.toString());
+		StringBuilder result = new StringBuilder(super.toString());
 		result.append(" (startPosition: "); //$NON-NLS-1$
 		result.append(startPosition);
 		result.append(", endPosition: "); //$NON-NLS-1$
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/EntryOperationImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/EntryOperationImpl.java
index 79abcd0..ef16603 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/EntryOperationImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/EntryOperationImpl.java
@@ -22,8 +22,6 @@
  * <!-- begin-user-doc -->
  * An implementation of the model object '<em><b>Entry Operation</b></em>'.
  * <!-- end-user-doc -->
- * <p>
- * </p>
  *
  * @generated
  */
@@ -60,7 +58,7 @@
 	 * @generated
 	 */
 	@Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ExpressionsFactoryImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ExpressionsFactoryImpl.java
index c327bcb..08cd6f3 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ExpressionsFactoryImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ExpressionsFactoryImpl.java
@@ -17,7 +17,7 @@
 import org.eclipse.emf.ecore.EPackage;
 import org.eclipse.emf.ecore.impl.EFactoryImpl;
 import org.eclipse.emf.ecore.plugin.EcorePlugin;
-import org.eclipse.m2m.internal.qvt.oml.expressions.*;
+import org.eclipse.m2m.internal.qvt.oml.expressions.Constructor;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ConstructorBody;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ContextualProperty;
 import org.eclipse.m2m.internal.qvt.oml.expressions.DirectionKind;
@@ -35,7 +35,6 @@
 import org.eclipse.m2m.internal.qvt.oml.expressions.MappingParameter;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModelParameter;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModelType;
-import org.eclipse.m2m.internal.qvt.oml.expressions.Module;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ObjectExp;
 import org.eclipse.m2m.internal.qvt.oml.expressions.OperationBody;
@@ -66,7 +65,7 @@
 	 */
 	public static ExpressionsFactory init() {
 		try {
-			ExpressionsFactory theExpressionsFactory = (ExpressionsFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/qvt/1.0.0/Operational/Expressions"); //$NON-NLS-1$ 
+			ExpressionsFactory theExpressionsFactory = (ExpressionsFactory)EPackage.Registry.INSTANCE.getEFactory(ExpressionsPackage.eNS_URI);
 			if (theExpressionsFactory != null) {
 				return theExpressionsFactory;
 			}
@@ -171,7 +170,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public Module createModule() {
+	public org.eclipse.m2m.internal.qvt.oml.expressions.Module createModule() {
 		ModuleImpl module = new ModuleImpl();
 		return module;
 	}
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ExpressionsPackageImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ExpressionsPackageImpl.java
index 734719e..fefab00 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ExpressionsPackageImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ExpressionsPackageImpl.java
@@ -42,7 +42,6 @@
 import org.eclipse.m2m.internal.qvt.oml.expressions.MappingParameter;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModelParameter;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModelType;
-import org.eclipse.m2m.internal.qvt.oml.expressions.Module;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ObjectExp;
 import org.eclipse.m2m.internal.qvt.oml.expressions.OperationBody;
@@ -52,6 +51,7 @@
 import org.eclipse.m2m.internal.qvt.oml.expressions.VarParameter;
 import org.eclipse.m2m.internal.qvt.oml.expressions.VisitableASTNode;
 import org.eclipse.m2m.qvt.oml.ecore.ImperativeOCL.ImperativeOCLPackage;
+import org.eclipse.ocl.types.TypesPackage;
 import org.eclipse.ocl.utilities.UtilitiesPackage;
 
 /**
@@ -296,20 +296,10 @@
 	private static boolean isInited = false;
 
 	/**
-	 * Creates, registers, and initializes the <b>Package</b> for this
-	 * model, and for any others upon which it depends.  Simple
-	 * dependencies are satisfied by calling this method on all
-	 * dependent packages before doing anything else.  This method drives
-	 * initialization for interdependent packages directly, in parallel
-	 * with this package, itself.
-	 * <p>Of this package and its interdependencies, all packages which
-	 * have not yet been registered by their URI values are first created
-	 * and registered.  The packages are then initialized in two steps:
-	 * meta-model objects for all of the packages are created before any
-	 * are initialized, since one package's meta-model objects may refer to
-	 * those of another.
-	 * <p>Invocation of this method will not affect any packages that have
-	 * already been initialized.
+	 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+	 *
+	 * <p>This method is used to initialize {@link ExpressionsPackage#eINSTANCE} when that field is accessed.
+	 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @see #eNS_URI
@@ -321,12 +311,18 @@
 		if (isInited) return (ExpressionsPackage)EPackage.Registry.INSTANCE.getEPackage(ExpressionsPackage.eNS_URI);
 
 		// Obtain or create and register package
-		ExpressionsPackageImpl theExpressionsPackage = (ExpressionsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof ExpressionsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new ExpressionsPackageImpl());
+		Object registeredExpressionsPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+		ExpressionsPackageImpl theExpressionsPackage = registeredExpressionsPackage instanceof ExpressionsPackageImpl ? (ExpressionsPackageImpl)registeredExpressionsPackage : new ExpressionsPackageImpl();
 
 		isInited = true;
 
 		// Initialize simple dependencies
+		EcorePackage.eINSTANCE.eClass();
 		ImperativeOCLPackage.eINSTANCE.eClass();
+		TypesPackage.eINSTANCE.eClass();
+		UtilitiesPackage.eINSTANCE.eClass();
+		org.eclipse.ocl.expressions.ExpressionsPackage.eINSTANCE.eClass();
+		org.eclipse.ocl.ecore.EcorePackage.eINSTANCE.eClass();
 
 		// Create package meta-data objects
 		theExpressionsPackage.createPackageContents();
@@ -337,6 +333,8 @@
 		// Mark meta-data to indicate it can't be changed
 		theExpressionsPackage.freeze();
 
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(ExpressionsPackage.eNS_URI, theExpressionsPackage);
 		return theExpressionsPackage;
 	}
 
@@ -1593,14 +1591,14 @@
 		g1 = createEGenericType(t1);
 		initEOperation(op, g1);
 
-		initEClass(moduleEClass, Module.class, "Module", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
-		initEReference(getModule_ConfigProperty(), theEcorePackage.getEStructuralFeature(), null, "configProperty", null, 0, -1, Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
-		initEReference(getModule_Entry(), this.getEntryOperation(), null, "entry", null, 0, 1, Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
-		initEAttribute(getModule_IsBlackbox(), theEcorePackage.getEBoolean(), "isBlackbox", null, 0, 1, Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
-		initEReference(getModule_ModuleImport(), this.getModuleImport(), this.getModuleImport_Module(), "moduleImport", null, 0, -1, Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
-		initEReference(getModule_OwnedTag(), theEcorePackage.getEAnnotation(), null, "ownedTag", null, 0, -1, Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
-		initEReference(getModule_OwnedVariable(), theEcorePackage_1.getVariable(), null, "ownedVariable", null, 0, -1, Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
-		initEReference(getModule_UsedModelType(), this.getModelType(), null, "usedModelType", null, 0, -1, Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+		initEClass(moduleEClass, org.eclipse.m2m.internal.qvt.oml.expressions.Module.class, "Module", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+		initEReference(getModule_ConfigProperty(), theEcorePackage.getEStructuralFeature(), null, "configProperty", null, 0, -1, org.eclipse.m2m.internal.qvt.oml.expressions.Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+		initEReference(getModule_Entry(), this.getEntryOperation(), null, "entry", null, 0, 1, org.eclipse.m2m.internal.qvt.oml.expressions.Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+		initEAttribute(getModule_IsBlackbox(), theEcorePackage.getEBoolean(), "isBlackbox", null, 0, 1, org.eclipse.m2m.internal.qvt.oml.expressions.Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+		initEReference(getModule_ModuleImport(), this.getModuleImport(), this.getModuleImport_Module(), "moduleImport", null, 0, -1, org.eclipse.m2m.internal.qvt.oml.expressions.Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+		initEReference(getModule_OwnedTag(), theEcorePackage.getEAnnotation(), null, "ownedTag", null, 0, -1, org.eclipse.m2m.internal.qvt.oml.expressions.Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+		initEReference(getModule_OwnedVariable(), theEcorePackage_1.getVariable(), null, "ownedVariable", null, 0, -1, org.eclipse.m2m.internal.qvt.oml.expressions.Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+		initEReference(getModule_UsedModelType(), this.getModelType(), null, "usedModelType", null, 0, -1, org.eclipse.m2m.internal.qvt.oml.expressions.Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
 
 		op = addEOperation(moduleEClass, null, "accept", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$
 		t1 = addETypeParameter(op, "T"); //$NON-NLS-1$
@@ -1874,25 +1872,25 @@
 	 * @generated
 	 */
 	protected void createEmofAnnotations() {
-		String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; //$NON-NLS-1$								
+		String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; //$NON-NLS-1$
 		addAnnotation
-		  (getImperativeOperation_Overridden(), 
-		   source, 
+		  (getImperativeOperation_Overridden(),
+		   source,
 		   new String[] {
-			 "body", "overriding" //$NON-NLS-1$ //$NON-NLS-2$
-		   });						
+			   "body", "overriding" //$NON-NLS-1$ //$NON-NLS-2$
+		   });
 		addAnnotation
-		  (getMappingOperation_Where(), 
-		   source, 
+		  (getMappingOperation_Where(),
+		   source,
 		   new String[] {
-			 "body", "whereOwner" //$NON-NLS-1$ //$NON-NLS-2$
-		   });				
+			   "body", "whereOwner" //$NON-NLS-1$ //$NON-NLS-2$
+		   });
 		addAnnotation
-		  (getModule_OwnedTag(), 
-		   source, 
+		  (getModule_OwnedTag(),
+		   source,
 		   new String[] {
-			 "body", "owner" //$NON-NLS-1$ //$NON-NLS-2$
-		   });						
+			   "body", "owner" //$NON-NLS-1$ //$NON-NLS-2$
+		   });
 	}
 
 } //ExpressionsPackageImpl
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/HelperImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/HelperImpl.java
index b198b47..87a2dd8 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/HelperImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/HelperImpl.java
@@ -24,10 +24,10 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.HelperImpl#isIsQuery <em>Is Query</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -105,7 +105,7 @@
 	 * @generated
 	 */
 	@Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
@@ -181,7 +181,7 @@
 	public String toString() {
 		if (eIsProxy()) return super.toString();
 
-		StringBuffer result = new StringBuffer(super.toString());
+		StringBuilder result = new StringBuilder(super.toString());
 		result.append(" (isQuery: "); //$NON-NLS-1$
 		result.append((eFlags & IS_QUERY_EFLAG) != 0);
 		result.append(')');
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ImperativeCallExpImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ImperativeCallExpImpl.java
index cd0beea..7ebbad3 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ImperativeCallExpImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ImperativeCallExpImpl.java
@@ -26,10 +26,10 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ImperativeCallExpImpl#isIsVirtual <em>Is Virtual</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -169,7 +169,7 @@
 	public String toString() {
 		if (eIsProxy()) return super.toString();
 
-		StringBuffer result = new StringBuffer(super.toString());
+		StringBuilder result = new StringBuilder(super.toString());
 		result.append(" (isVirtual: "); //$NON-NLS-1$
 		result.append((eFlags & IS_VIRTUAL_EFLAG) != 0);
 		result.append(')');
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ImperativeOperationImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ImperativeOperationImpl.java
index 67bbb77..b306214 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ImperativeOperationImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ImperativeOperationImpl.java
@@ -38,6 +38,7 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ImperativeOperationImpl#getStartPosition <em>Start Position</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ImperativeOperationImpl#getEndPosition <em>End Position</em>}</li>
@@ -47,7 +48,6 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ImperativeOperationImpl#getOverridden <em>Overridden</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ImperativeOperationImpl#getResult <em>Result</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -382,7 +382,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
@@ -616,7 +616,7 @@
 	public String toString() {
 		if (eIsProxy()) return super.toString();
 
-		StringBuffer result = new StringBuffer(super.toString());
+		StringBuilder result = new StringBuilder(super.toString());
 		result.append(" (startPosition: "); //$NON-NLS-1$
 		result.append(startPosition);
 		result.append(", endPosition: "); //$NON-NLS-1$
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/LibraryImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/LibraryImpl.java
index d3bf40f..cab9026 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/LibraryImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/LibraryImpl.java
@@ -20,8 +20,6 @@
  * <!-- begin-user-doc -->
  * An implementation of the model object '<em><b>Library</b></em>'.
  * <!-- end-user-doc -->
- * <p>
- * </p>
  *
  * @generated
  */
@@ -58,7 +56,7 @@
 	 * @generated
 	 */
 	@Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingBodyImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingBodyImpl.java
index c827ab6..4c4f17a 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingBodyImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingBodyImpl.java
@@ -30,11 +30,11 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.MappingBodyImpl#getEndSection <em>End Section</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.MappingBodyImpl#getInitSection <em>Init Section</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -115,7 +115,7 @@
 	 * @generated
 	 */
 	@Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingCallExpImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingCallExpImpl.java
index acb4cc7..ee3e5ad 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingCallExpImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingCallExpImpl.java
@@ -24,10 +24,10 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.MappingCallExpImpl#isIsStrict <em>Is Strict</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -105,7 +105,7 @@
 	 * @generated
 	 */
 	@Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
@@ -181,7 +181,7 @@
 	public String toString() {
 		if (eIsProxy()) return super.toString();
 
-		StringBuffer result = new StringBuffer(super.toString());
+		StringBuilder result = new StringBuilder(super.toString());
 		result.append(" (isStrict: "); //$NON-NLS-1$
 		result.append((eFlags & IS_STRICT_EFLAG) != 0);
 		result.append(')');
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingOperationImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingOperationImpl.java
index 1cd5d5b..75ea9e2 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingOperationImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingOperationImpl.java
@@ -33,6 +33,7 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.MappingOperationImpl#getDisjunct <em>Disjunct</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.MappingOperationImpl#getInherited <em>Inherited</em>}</li>
@@ -40,7 +41,6 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.MappingOperationImpl#getWhen <em>When</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.MappingOperationImpl#getWhere <em>Where</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -213,7 +213,7 @@
 	 * @generated
 	 */
 	@Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingParameterImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingParameterImpl.java
index f22635e..33418f9 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingParameterImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/MappingParameterImpl.java
@@ -27,10 +27,10 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.MappingParameterImpl#getExtent <em>Extent</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModelParameterImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModelParameterImpl.java
index b020c9d..564f800 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModelParameterImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModelParameterImpl.java
@@ -21,8 +21,6 @@
  * <!-- begin-user-doc -->
  * An implementation of the model object '<em><b>Model Parameter</b></em>'.
  * <!-- end-user-doc -->
- * <p>
- * </p>
  *
  * @generated
  */
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModelTypeImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModelTypeImpl.java
index 1924a9f..e063a48 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModelTypeImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModelTypeImpl.java
@@ -41,6 +41,7 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModelTypeImpl#getStartPosition <em>Start Position</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModelTypeImpl#getEndPosition <em>End Position</em>}</li>
@@ -48,7 +49,6 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModelTypeImpl#getConformanceKind <em>Conformance Kind</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModelTypeImpl#getMetamodel <em>Metamodel</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -251,7 +251,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
@@ -438,7 +438,7 @@
 	public String toString() {
 		if (eIsProxy()) return super.toString();
 
-		StringBuffer result = new StringBuffer(super.toString());
+		StringBuilder result = new StringBuilder(super.toString());
 		result.append(" (startPosition: "); //$NON-NLS-1$
 		result.append(startPosition);
 		result.append(", endPosition: "); //$NON-NLS-1$
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModuleImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModuleImpl.java
index d40c841..2dc80ff 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModuleImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModuleImpl.java
@@ -33,7 +33,6 @@
 import org.eclipse.m2m.internal.qvt.oml.expressions.EntryOperation;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModelType;
-import org.eclipse.m2m.internal.qvt.oml.expressions.Module;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport;
 import org.eclipse.m2m.internal.qvt.oml.expressions.VisitableASTNode;
 import org.eclipse.ocl.ecore.Variable;
@@ -48,6 +47,7 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModuleImpl#getNsURI <em>Ns URI</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModuleImpl#getNsPrefix <em>Ns Prefix</em>}</li>
@@ -65,11 +65,10 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModuleImpl#getOwnedVariable <em>Owned Variable</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModuleImpl#getUsedModelType <em>Used Model Type</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
-public class ModuleImpl extends EClassImpl implements Module {
+public class ModuleImpl extends EClassImpl implements org.eclipse.m2m.internal.qvt.oml.expressions.Module {
 	/**
 	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
@@ -625,7 +624,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
@@ -1026,7 +1025,7 @@
 	public String toString() {
 		if (eIsProxy()) return super.toString();
 
-		StringBuffer result = new StringBuffer(super.toString());
+		StringBuilder result = new StringBuilder(super.toString());
 		result.append(" (nsURI: "); //$NON-NLS-1$
 		result.append(nsURI);
 		result.append(", nsPrefix: "); //$NON-NLS-1$
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModuleImportImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModuleImportImpl.java
index 657db45..4313a4a 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModuleImportImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ModuleImportImpl.java
@@ -19,7 +19,6 @@
 import org.eclipse.emf.ecore.EAnnotation;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EModelElement;
-import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.EcorePackage;
 import org.eclipse.emf.ecore.InternalEObject;
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
@@ -31,7 +30,6 @@
 import org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ImportKind;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModelType;
-import org.eclipse.m2m.internal.qvt.oml.expressions.Module;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport;
 import org.eclipse.ocl.utilities.ASTNode;
 import org.eclipse.ocl.utilities.UtilitiesPackage;
@@ -43,6 +41,7 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModuleImportImpl#getStartPosition <em>Start Position</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModuleImportImpl#getEndPosition <em>End Position</em>}</li>
@@ -52,7 +51,6 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModuleImportImpl#getKind <em>Kind</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ModuleImportImpl#getModule <em>Module</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -132,7 +130,7 @@
 	 * @generated
 	 * @ordered
 	 */
-	protected Module importedModule;
+	protected org.eclipse.m2m.internal.qvt.oml.expressions.Module importedModule;
 
 	/**
 	 * The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
@@ -244,9 +242,9 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public Module getModule() {
+	public org.eclipse.m2m.internal.qvt.oml.expressions.Module getModule() {
 		if (eContainerFeatureID() != ExpressionsPackage.MODULE_IMPORT__MODULE) return null;
-		return (Module)eContainer();
+		return (org.eclipse.m2m.internal.qvt.oml.expressions.Module)eInternalContainer();
 	}
 
 	/**
@@ -254,7 +252,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain basicSetModule(Module newModule, NotificationChain msgs) {
+	public NotificationChain basicSetModule(org.eclipse.m2m.internal.qvt.oml.expressions.Module newModule, NotificationChain msgs) {
 		msgs = eBasicSetContainer((InternalEObject)newModule, ExpressionsPackage.MODULE_IMPORT__MODULE, msgs);
 		return msgs;
 	}
@@ -264,7 +262,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public void setModule(Module newModule) {
+	public void setModule(org.eclipse.m2m.internal.qvt.oml.expressions.Module newModule) {
 		if (newModule != eInternalContainer() || (eContainerFeatureID() != ExpressionsPackage.MODULE_IMPORT__MODULE && newModule != null)) {
 			if (EcoreUtil.isAncestor(this, newModule))
 				throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); //$NON-NLS-1$
@@ -272,7 +270,7 @@
 			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
 			if (newModule != null)
-				msgs = ((InternalEObject)newModule).eInverseAdd(this, ExpressionsPackage.MODULE__MODULE_IMPORT, Module.class, msgs);
+				msgs = ((InternalEObject)newModule).eInverseAdd(this, ExpressionsPackage.MODULE__MODULE_IMPORT, org.eclipse.m2m.internal.qvt.oml.expressions.Module.class, msgs);
 			msgs = basicSetModule(newModule, msgs);
 			if (msgs != null) msgs.dispatch();
 		}
@@ -285,10 +283,10 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public Module getImportedModule() {
+	public org.eclipse.m2m.internal.qvt.oml.expressions.Module getImportedModule() {
 		if (importedModule != null && importedModule.eIsProxy()) {
 			InternalEObject oldImportedModule = (InternalEObject)importedModule;
-			importedModule = (Module)eResolveProxy(oldImportedModule);
+			importedModule = (org.eclipse.m2m.internal.qvt.oml.expressions.Module)eResolveProxy(oldImportedModule);
 			if (importedModule != oldImportedModule) {
 				if (eNotificationRequired())
 					eNotify(new ENotificationImpl(this, Notification.RESOLVE, ExpressionsPackage.MODULE_IMPORT__IMPORTED_MODULE, oldImportedModule, importedModule));
@@ -302,7 +300,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public Module basicGetImportedModule() {
+	public org.eclipse.m2m.internal.qvt.oml.expressions.Module basicGetImportedModule() {
 		return importedModule;
 	}
 
@@ -311,8 +309,8 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public void setImportedModule(Module newImportedModule) {
-		Module oldImportedModule = importedModule;
+	public void setImportedModule(org.eclipse.m2m.internal.qvt.oml.expressions.Module newImportedModule) {
+		org.eclipse.m2m.internal.qvt.oml.expressions.Module oldImportedModule = importedModule;
 		importedModule = newImportedModule;
 		if (eNotificationRequired())
 			eNotify(new ENotificationImpl(this, Notification.SET, ExpressionsPackage.MODULE_IMPORT__IMPORTED_MODULE, oldImportedModule, importedModule));
@@ -344,7 +342,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
@@ -378,7 +376,7 @@
 			case ExpressionsPackage.MODULE_IMPORT__MODULE:
 				if (eInternalContainer() != null)
 					msgs = eBasicRemoveFromContainer(msgs);
-				return basicSetModule((Module)otherEnd, msgs);
+				return basicSetModule((org.eclipse.m2m.internal.qvt.oml.expressions.Module)otherEnd, msgs);
 		}
 		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
@@ -408,7 +406,7 @@
 	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
 		switch (eContainerFeatureID()) {
 			case ExpressionsPackage.MODULE_IMPORT__MODULE:
-				return eInternalContainer().eInverseRemove(this, ExpressionsPackage.MODULE__MODULE_IMPORT, Module.class, msgs);
+				return eInternalContainer().eInverseRemove(this, ExpressionsPackage.MODULE__MODULE_IMPORT, org.eclipse.m2m.internal.qvt.oml.expressions.Module.class, msgs);
 		}
 		return super.eBasicRemoveFromContainerFeature(msgs);
 	}
@@ -464,13 +462,13 @@
 				getBinding().addAll((Collection<? extends ModelType>)newValue);
 				return;
 			case ExpressionsPackage.MODULE_IMPORT__IMPORTED_MODULE:
-				setImportedModule((Module)newValue);
+				setImportedModule((org.eclipse.m2m.internal.qvt.oml.expressions.Module)newValue);
 				return;
 			case ExpressionsPackage.MODULE_IMPORT__KIND:
 				setKind((ImportKind)newValue);
 				return;
 			case ExpressionsPackage.MODULE_IMPORT__MODULE:
-				setModule((Module)newValue);
+				setModule((org.eclipse.m2m.internal.qvt.oml.expressions.Module)newValue);
 				return;
 		}
 		super.eSet(featureID, newValue);
@@ -497,13 +495,13 @@
 				getBinding().clear();
 				return;
 			case ExpressionsPackage.MODULE_IMPORT__IMPORTED_MODULE:
-				setImportedModule((Module)null);
+				setImportedModule((org.eclipse.m2m.internal.qvt.oml.expressions.Module)null);
 				return;
 			case ExpressionsPackage.MODULE_IMPORT__KIND:
 				setKind(KIND_EDEFAULT);
 				return;
 			case ExpressionsPackage.MODULE_IMPORT__MODULE:
-				setModule((Module)null);
+				setModule((org.eclipse.m2m.internal.qvt.oml.expressions.Module)null);
 				return;
 		}
 		super.eUnset(featureID);
@@ -549,11 +547,6 @@
 				default: return -1;
 			}
 		}
-		if (baseClass == EObject.class) {
-			switch (derivedFeatureID) {
-				default: return -1;
-			}
-		}
 		if (baseClass == EModelElement.class) {
 			switch (derivedFeatureID) {
 				case ExpressionsPackage.MODULE_IMPORT__EANNOTATIONS: return EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
@@ -577,11 +570,6 @@
 				default: return -1;
 			}
 		}
-		if (baseClass == EObject.class) {
-			switch (baseFeatureID) {
-				default: return -1;
-			}
-		}
 		if (baseClass == EModelElement.class) {
 			switch (baseFeatureID) {
 				case EcorePackage.EMODEL_ELEMENT__EANNOTATIONS: return ExpressionsPackage.MODULE_IMPORT__EANNOTATIONS;
@@ -600,7 +588,7 @@
 	public String toString() {
 		if (eIsProxy()) return super.toString();
 
-		StringBuffer result = new StringBuffer(super.toString());
+		StringBuilder result = new StringBuilder(super.toString());
 		result.append(" (startPosition: "); //$NON-NLS-1$
 		result.append(startPosition);
 		result.append(", endPosition: "); //$NON-NLS-1$
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ObjectExpImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ObjectExpImpl.java
index c7660eb..edec0ae 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ObjectExpImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ObjectExpImpl.java
@@ -29,11 +29,11 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ObjectExpImpl#getBody <em>Body</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ObjectExpImpl#getReferredObject <em>Referred Object</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -169,7 +169,7 @@
 	 * @generated
 	 */
 	@Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/OperationBodyImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/OperationBodyImpl.java
index df8def4..f69153d 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/OperationBodyImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/OperationBodyImpl.java
@@ -19,7 +19,6 @@
 import org.eclipse.emf.ecore.EAnnotation;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EModelElement;
-import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.EcorePackage;
 import org.eclipse.emf.ecore.InternalEObject;
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
@@ -43,6 +42,7 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.OperationBodyImpl#getStartPosition <em>Start Position</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.OperationBodyImpl#getEndPosition <em>End Position</em>}</li>
@@ -51,7 +51,6 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.OperationBodyImpl#getOperation <em>Operation</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.OperationBodyImpl#getVariable <em>Variable</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -213,7 +212,7 @@
 	 */
 	public ImperativeOperation getOperation() {
 		if (eContainerFeatureID() != ExpressionsPackage.OPERATION_BODY__OPERATION) return null;
-		return (ImperativeOperation)eContainer();
+		return (ImperativeOperation)eInternalContainer();
 	}
 
 	/**
@@ -276,7 +275,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
@@ -475,11 +474,6 @@
 				default: return -1;
 			}
 		}
-		if (baseClass == EObject.class) {
-			switch (derivedFeatureID) {
-				default: return -1;
-			}
-		}
 		if (baseClass == EModelElement.class) {
 			switch (derivedFeatureID) {
 				case ExpressionsPackage.OPERATION_BODY__EANNOTATIONS: return EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
@@ -503,11 +497,6 @@
 				default: return -1;
 			}
 		}
-		if (baseClass == EObject.class) {
-			switch (baseFeatureID) {
-				default: return -1;
-			}
-		}
 		if (baseClass == EModelElement.class) {
 			switch (baseFeatureID) {
 				case EcorePackage.EMODEL_ELEMENT__EANNOTATIONS: return ExpressionsPackage.OPERATION_BODY__EANNOTATIONS;
@@ -526,7 +515,7 @@
 	public String toString() {
 		if (eIsProxy()) return super.toString();
 
-		StringBuffer result = new StringBuffer(super.toString());
+		StringBuilder result = new StringBuilder(super.toString());
 		result.append(" (startPosition: "); //$NON-NLS-1$
 		result.append(startPosition);
 		result.append(", endPosition: "); //$NON-NLS-1$
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/OperationalTransformationImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/OperationalTransformationImpl.java
index 1e7f86d..08880ae 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/OperationalTransformationImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/OperationalTransformationImpl.java
@@ -33,12 +33,12 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.OperationalTransformationImpl#getIntermediateClass <em>Intermediate Class</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.OperationalTransformationImpl#getIntermediateProperty <em>Intermediate Property</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.OperationalTransformationImpl#getModelParameter <em>Model Parameter</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ResolveExpImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ResolveExpImpl.java
index 41ab9c9..18c84ce 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ResolveExpImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ResolveExpImpl.java
@@ -31,6 +31,7 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ResolveExpImpl#getCondition <em>Condition</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ResolveExpImpl#isIsDeferred <em>Is Deferred</em>}</li>
@@ -38,7 +39,6 @@
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ResolveExpImpl#isOne <em>One</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ResolveExpImpl#getTarget <em>Target</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -304,7 +304,7 @@
 	 * @generated
 	 */
 	@Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
@@ -436,7 +436,7 @@
 	public String toString() {
 		if (eIsProxy()) return super.toString();
 
-		StringBuffer result = new StringBuffer(super.toString());
+		StringBuilder result = new StringBuilder(super.toString());
 		result.append(" (isDeferred: "); //$NON-NLS-1$
 		result.append((eFlags & IS_DEFERRED_EFLAG) != 0);
 		result.append(", isInverse: "); //$NON-NLS-1$
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ResolveInExpImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ResolveInExpImpl.java
index 08f229d..7215537 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ResolveInExpImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/ResolveInExpImpl.java
@@ -28,10 +28,10 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.ResolveInExpImpl#getInMapping <em>In Mapping</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -116,7 +116,7 @@
 	 * @generated
 	 */
     @Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/VarParameterImpl.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/VarParameterImpl.java
index 6cc35c2..8e108ef 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/VarParameterImpl.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/impl/VarParameterImpl.java
@@ -33,13 +33,13 @@
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
+ * </p>
  * <ul>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.VarParameterImpl#getEOperation <em>EOperation</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.VarParameterImpl#getCtxOwner <em>Ctx Owner</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.VarParameterImpl#getKind <em>Kind</em>}</li>
  *   <li>{@link org.eclipse.m2m.internal.qvt.oml.expressions.impl.VarParameterImpl#getResOwner <em>Res Owner</em>}</li>
  * </ul>
- * </p>
  *
  * @generated
  */
@@ -97,7 +97,7 @@
 	 */
 	public EOperation getEOperation() {
 		if (eContainerFeatureID() != ExpressionsPackage.VAR_PARAMETER__EOPERATION) return null;
-		return (EOperation)eContainer();
+		return (EOperation)eInternalContainer();
 	}
 
 	/**
@@ -107,7 +107,7 @@
 	 */
 	public ImperativeOperation getCtxOwner() {
 		if (eContainerFeatureID() != ExpressionsPackage.VAR_PARAMETER__CTX_OWNER) return null;
-		return (ImperativeOperation)eContainer();
+		return (ImperativeOperation)eInternalContainer();
 	}
 
 	/**
@@ -148,7 +148,7 @@
 	 */
 	public ImperativeOperation getResOwner() {
 		if (eContainerFeatureID() != ExpressionsPackage.VAR_PARAMETER__RES_OWNER) return null;
-		return (ImperativeOperation)eContainer();
+		return (ImperativeOperation)eInternalContainer();
 	}
 
 	/**
@@ -209,7 +209,7 @@
 	 * @generated
 	 */
 	@Override
-	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(U v) {
+	public <T, U extends Visitor<T, ?, ?, ?, ?, ?, ?, ?, ?, ?>> T accept(final U v) {
 		if(v instanceof org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) {
 		  @SuppressWarnings("unchecked")    		
 		  org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor<T> visitorExt = (org.eclipse.m2m.internal.qvt.oml.expressions.util.QVTOperationalVisitor) v;    	
@@ -401,7 +401,7 @@
 	public String toString() {
 		if (eIsProxy()) return super.toString();
 
-		StringBuffer result = new StringBuffer(super.toString());
+		StringBuilder result = new StringBuilder(super.toString());
 		result.append(" (kind: "); //$NON-NLS-1$
 		result.append(kind);
 		result.append(')');
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/util/ExpressionsAdapterFactory.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/util/ExpressionsAdapterFactory.java
index dcc8243..a564c6e 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/util/ExpressionsAdapterFactory.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/util/ExpressionsAdapterFactory.java
@@ -24,7 +24,7 @@
 import org.eclipse.emf.ecore.EParameter;
 import org.eclipse.emf.ecore.EStructuralFeature;
 import org.eclipse.emf.ecore.ETypedElement;
-import org.eclipse.m2m.internal.qvt.oml.expressions.*;
+import org.eclipse.m2m.internal.qvt.oml.expressions.Constructor;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ConstructorBody;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ContextualProperty;
 import org.eclipse.m2m.internal.qvt.oml.expressions.EntryOperation;
@@ -39,7 +39,6 @@
 import org.eclipse.m2m.internal.qvt.oml.expressions.MappingParameter;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModelParameter;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModelType;
-import org.eclipse.m2m.internal.qvt.oml.expressions.Module;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ObjectExp;
 import org.eclipse.m2m.internal.qvt.oml.expressions.OperationBody;
@@ -180,7 +179,7 @@
 				return createModelTypeAdapter();
 			}
 			@Override
-			public Adapter caseModule(Module object) {
+			public Adapter caseModule(org.eclipse.m2m.internal.qvt.oml.expressions.Module object) {
 				return createModuleAdapter();
 			}
 			@Override
diff --git a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/util/ExpressionsSwitch.java b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/util/ExpressionsSwitch.java
index 7fbfbd3..18ccc07 100644
--- a/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/util/ExpressionsSwitch.java
+++ b/plugins/org.eclipse.m2m.qvt.oml/_generated/org/eclipse/m2m/internal/qvt/oml/expressions/util/ExpressionsSwitch.java
@@ -11,8 +11,6 @@
  *******************************************************************************/
 package org.eclipse.m2m.internal.qvt.oml.expressions.util;
 
-import java.util.List;
-
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EClassifier;
 import org.eclipse.emf.ecore.EModelElement;
@@ -23,7 +21,8 @@
 import org.eclipse.emf.ecore.EParameter;
 import org.eclipse.emf.ecore.EStructuralFeature;
 import org.eclipse.emf.ecore.ETypedElement;
-import org.eclipse.m2m.internal.qvt.oml.expressions.*;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.m2m.internal.qvt.oml.expressions.Constructor;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ConstructorBody;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ContextualProperty;
 import org.eclipse.m2m.internal.qvt.oml.expressions.EntryOperation;
@@ -38,7 +37,6 @@
 import org.eclipse.m2m.internal.qvt.oml.expressions.MappingParameter;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModelParameter;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModelType;
-import org.eclipse.m2m.internal.qvt.oml.expressions.Module;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ModuleImport;
 import org.eclipse.m2m.internal.qvt.oml.expressions.ObjectExp;
 import org.eclipse.m2m.internal.qvt.oml.expressions.OperationBody;
@@ -73,7 +71,7 @@
  * @see org.eclipse.m2m.internal.qvt.oml.expressions.ExpressionsPackage
  * @generated
  */
-public class ExpressionsSwitch<T> {
+public class ExpressionsSwitch<T> extends Switch<T> {
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -101,14 +99,16 @@
 	}
 
 	/**
-	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+	 * Checks whether this is a switch for the given package.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @param ePackage the package in question.
+	 * @return whether this is a switch for the given package.
 	 * @generated
 	 */
-	public T doSwitch(EObject theEObject) {
-		return doSwitch(theEObject.eClass(), theEObject);
+	@Override
+	protected boolean isSwitchFor(EPackage ePackage) {
+		return ePackage == modelPackage;
 	}
 
 	/**
@@ -118,26 +118,7 @@
 	 * @return the first non-null result returned by a <code>caseXXX</code> call.
 	 * @generated
 	 */
-	protected T doSwitch(EClass theEClass, EObject theEObject) {
-		if (theEClass.eContainer() == modelPackage) {
-			return doSwitch(theEClass.getClassifierID(), theEObject);
-		}
-		else {
-			List<EClass> eSuperTypes = theEClass.getESuperTypes();
-			return
-				eSuperTypes.isEmpty() ?
-					defaultCase(theEObject) :
-					doSwitch(eSuperTypes.get(0), theEObject);
-		}
-	}
-
-	/**
-	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the first non-null result returned by a <code>caseXXX</code> call.
-	 * @generated
-	 */
+	@Override
 	protected T doSwitch(int classifierID, EObject theEObject) {
 		switch (classifierID) {
 			case ExpressionsPackage.CONSTRUCTOR: {
@@ -213,17 +194,17 @@
 				if (result == null) result = caseImperativeExpression(imperativeCallExp);
 				if (result == null) result = caseEcore_FeatureCallExp(imperativeCallExp);
 				if (result == null) result = caseOperationCallExp(imperativeCallExp);
-				if (result == null) result = caseEcore_OCLExpression(imperativeCallExp);
 				if (result == null) result = caseEcore_CallExp(imperativeCallExp);
 				if (result == null) result = caseFeatureCallExp(imperativeCallExp);
+				if (result == null) result = caseEcore_OCLExpression(imperativeCallExp);
+				if (result == null) result = caseCallExp(imperativeCallExp);
 				if (result == null) result = caseETypedElement(imperativeCallExp);
 				if (result == null) result = caseOCLExpression(imperativeCallExp);
-				if (result == null) result = caseCallExp(imperativeCallExp);
+				if (result == null) result = caseCallingASTNode(imperativeCallExp);
 				if (result == null) result = caseENamedElement(imperativeCallExp);
 				if (result == null) result = caseTypedElement(imperativeCallExp);
 				if (result == null) result = caseVisitable(imperativeCallExp);
 				if (result == null) result = caseASTNode(imperativeCallExp);
-				if (result == null) result = caseCallingASTNode(imperativeCallExp);
 				if (result == null) result = caseEModelElement(imperativeCallExp);
 				if (result == null) result = defaultCase(theEObject);
 				return result;
@@ -249,9 +230,9 @@
 				if (result == null) result = caseEPackage(library);
 				if (result == null) result = caseVisitableASTNode(library);
 				if (result == null) result = caseEClassifier(library);
-				if (result == null) result = caseENamedElement(library);
 				if (result == null) result = caseVisitable(library);
 				if (result == null) result = caseASTNode(library);
+				if (result == null) result = caseENamedElement(library);
 				if (result == null) result = caseEModelElement(library);
 				if (result == null) result = defaultCase(theEObject);
 				return result;
@@ -275,17 +256,17 @@
 				if (result == null) result = caseImperativeExpression(mappingCallExp);
 				if (result == null) result = caseEcore_FeatureCallExp(mappingCallExp);
 				if (result == null) result = caseOperationCallExp(mappingCallExp);
-				if (result == null) result = caseEcore_OCLExpression(mappingCallExp);
 				if (result == null) result = caseEcore_CallExp(mappingCallExp);
 				if (result == null) result = caseFeatureCallExp(mappingCallExp);
+				if (result == null) result = caseEcore_OCLExpression(mappingCallExp);
+				if (result == null) result = caseCallExp(mappingCallExp);
 				if (result == null) result = caseETypedElement(mappingCallExp);
 				if (result == null) result = caseOCLExpression(mappingCallExp);
-				if (result == null) result = caseCallExp(mappingCallExp);
+				if (result == null) result = caseCallingASTNode(mappingCallExp);
 				if (result == null) result = caseENamedElement(mappingCallExp);
 				if (result == null) result = caseTypedElement(mappingCallExp);
 				if (result == null) result = caseVisitable(mappingCallExp);
 				if (result == null) result = caseASTNode(mappingCallExp);
-				if (result == null) result = caseCallingASTNode(mappingCallExp);
 				if (result == null) result = caseEModelElement(mappingCallExp);
 				if (result == null) result = defaultCase(theEObject);
 				return result;
@@ -352,15 +333,15 @@
 				return result;
 			}
 			case ExpressionsPackage.MODULE: {
-				Module module = (Module)theEObject;
+				org.eclipse.m2m.internal.qvt.oml.expressions.Module module = (org.eclipse.m2m.internal.qvt.oml.expressions.Module)theEObject;
 				T result = caseModule(module);
 				if (result == null) result = caseEClass(module);
 				if (result == null) result = caseEPackage(module);
 				if (result == null) result = caseVisitableASTNode(module);
 				if (result == null) result = caseEClassifier(module);
-				if (result == null) result = caseENamedElement(module);
 				if (result == null) result = caseVisitable(module);
 				if (result == null) result = caseASTNode(module);
+				if (result == null) result = caseENamedElement(module);
 				if (result == null) result = caseEModelElement(module);
 				if (result == null) result = defaultCase(theEObject);
 				return result;
@@ -409,9 +390,9 @@
 				if (result == null) result = caseEPackage(operationalTransformation);
 				if (result == null) result = caseVisitableASTNode(operationalTransformation);
 				if (result == null) result = caseEClassifier(operationalTransformation);
-				if (result == null) result = caseENamedElement(operationalTransformation);
 				if (result == null) result = caseVisitable(operationalTransformation);
 				if (result == null) result = caseASTNode(operationalTransformation);
+				if (result == null) result = caseENamedElement(operationalTransformation);
 				if (result == null) result = caseEModelElement(operationalTransformation);
 				if (result == null) result = defaultCase(theEObject);
 				return result;
@@ -495,21 +476,6 @@
 	}
 
 	/**
-	 * Returns the result of interpreting the object as an instance of '<em>Module</em>'.
-	 * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-	 * @param object the target of the switch.
-	 * @return the result of interpreting the object as an instance of '<em>Module</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public T caseModule(Module object) {
-		return null;
-	}
-
-	/**
 	 * Returns the result of interpreting the object as an instance of '<em>Library</em>'.
 	 * <!-- begin-user-doc -->
 	 * This implementation returns null;
@@ -780,6 +746,21 @@
 	}
 
 	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Module</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Module</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseModule(org.eclipse.m2m.internal.qvt.oml.expressions.Module object) {
+		return null;
+	}
+
+	/**
 	 * Returns the result of interpreting the object as an instance of '<em>Mapping Parameter</em>'.
 	 * <!-- begin-user-doc -->
 	 * This implementation returns null;
@@ -1225,6 +1206,7 @@
 	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
 	 * @generated
 	 */
+	@Override
 	public T defaultCase(EObject object) {
 		return null;
 	}