diff --git a/org.xtext.example.mydslTest.ui/META-INF/MANIFEST.MF b/org.xtext.example.mydslTest.ui/META-INF/MANIFEST.MF
index 6020cec46d6a840e6543accda2eecfcf12bb299f..d18c0ee7354ee428c10af0ff7b300b2ff6cb7bc8 100644
--- a/org.xtext.example.mydslTest.ui/META-INF/MANIFEST.MF
+++ b/org.xtext.example.mydslTest.ui/META-INF/MANIFEST.MF
@@ -17,5 +17,6 @@ Require-Bundle: org.xtext.example.mydslTest;visibility:=reexport,
 Import-Package: org.apache.log4j,
  org.apache.commons.logging
 Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Export-Package: org.xtext.example.mydsl.ui.contentassist.antlr
+Export-Package: org.xtext.example.mydsl.ui.contentassist.antlr,
+ org.xtext.example.mydsl.ui.contentassist
 Bundle-Activator: org.xtext.example.mydsl.ui.internal.MyDslTestActivator
diff --git a/org.xtext.example.mydslTest.ui/plugin.xml_gen b/org.xtext.example.mydslTest.ui/plugin.xml_gen
index 4f3ea02a956c4bad27b48c97032bdf4765b63c42..42a607a164fd481c0096a2fc5e1cd3e730d17bea 100644
--- a/org.xtext.example.mydslTest.ui/plugin.xml_gen
+++ b/org.xtext.example.mydslTest.ui/plugin.xml_gen
@@ -151,6 +151,28 @@
     </extension>
 
 
+    <!-- marker definitions for org.xtext.example.mydsl.MyDslTest -->
+    <extension
+            id="mydsltest.check.fast"
+            name="MyDslTest Problem"
+            point="org.eclipse.core.resources.markers">
+        <super type="org.eclipse.xtext.ui.check.fast"/>
+        <persistent value="true"/>
+    </extension>
+    <extension
+            id="mydsltest.check.normal"
+            name="MyDslTest Problem"
+            point="org.eclipse.core.resources.markers">
+        <super type="org.eclipse.xtext.ui.check.normal"/>
+        <persistent value="true"/>
+    </extension>
+    <extension
+            id="mydsltest.check.expensive"
+            name="MyDslTest Problem"
+            point="org.eclipse.core.resources.markers">
+        <super type="org.eclipse.xtext.ui.check.expensive"/>
+        <persistent value="true"/>
+    </extension>
 
 	<!-- Quick Outline -->
 	<extension
@@ -204,12 +226,33 @@
             extensions="mydslTest">
     </provider>
   </extension>
-   <!-- quickfix marker resolution generator -->
-   <extension
-         point="org.eclipse.ui.ide.markerResolution">
-      <markerResolutionGenerator
-            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator">
-      </markerResolutionGenerator>
-   </extension>
+    <!-- quickfix marker resolution generator for org.xtext.example.mydsl.MyDslTest -->
+    <extension
+            point="org.eclipse.ui.ide.markerResolution">
+        <markerResolutionGenerator
+            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+            markerType="org.xtext.example.mydsl.ui.mydsltest.check.fast">
+            <attribute
+                name="FIXABLE_KEY"
+                value="true">
+            </attribute>
+        </markerResolutionGenerator>
+        <markerResolutionGenerator
+            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+            markerType="org.xtext.example.mydsl.ui.mydsltest.check.normal">
+            <attribute
+                name="FIXABLE_KEY"
+                value="true">
+            </attribute>
+        </markerResolutionGenerator>
+        <markerResolutionGenerator
+            class="org.xtext.example.mydsl.ui.MyDslTestExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
+            markerType="org.xtext.example.mydsl.ui.mydsltest.check.expensive">
+            <attribute
+                name="FIXABLE_KEY"
+                value="true">
+            </attribute>
+        </markerResolutionGenerator>
+    </extension>
 
 </plugin>
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/MyDslTestExecutableExtensionFactory.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/MyDslTestExecutableExtensionFactory.java
index f6f22f63b20df575201813524631e7e831bb604e..74f78f4613c5a4368e19f14de57d51ec3f7b91e0 100644
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/MyDslTestExecutableExtensionFactory.java
+++ b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/MyDslTestExecutableExtensionFactory.java
@@ -8,6 +8,8 @@ import org.osgi.framework.Bundle;
 
 import com.google.inject.Injector;
 
+import org.xtext.example.mydsl.ui.internal.MyDslTestActivator;
+
 /**
  * This class was generated. Customizations should only happen in a newly
  * introduced subclass. 
@@ -16,12 +18,12 @@ public class MyDslTestExecutableExtensionFactory extends AbstractGuiceAwareExecu
 
 	@Override
 	protected Bundle getBundle() {
-		return org.xtext.example.mydsl.ui.internal.MyDslTestActivator.getInstance().getBundle();
+		return MyDslTestActivator.getInstance().getBundle();
 	}
 	
 	@Override
 	protected Injector getInjector() {
-		return org.xtext.example.mydsl.ui.internal.MyDslTestActivator.getInstance().getInjector("org.xtext.example.mydsl.MyDslTest");
+		return MyDslTestActivator.getInstance().getInjector(MyDslTestActivator.ORG_XTEXT_EXAMPLE_MYDSL_MYDSLTEST);
 	}
 	
 }
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/MyDslTestParser.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/MyDslTestParser.java
index 789b09a6ef7d76e64256b98470e69bc0c20001b9..c85b4ef83619b177f41c249b7ce32ce850e05f65 100644
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/MyDslTestParser.java
+++ b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/MyDslTestParser.java
@@ -37,18 +37,13 @@ public class MyDslTestParser extends AbstractContentAssistParser {
 			nameMappings = new HashMap<AbstractElement, String>() {
 				private static final long serialVersionUID = 1L;
 				{
+					put(grammarAccess.getRepositoryAccess().getAlternatives_3(), "rule__Repository__Alternatives_3");
 					put(grammarAccess.getDataTypeAccess().getAlternatives(), "rule__DataType__Alternatives");
 					put(grammarAccess.getRepositoryComponentAccess().getAlternatives(), "rule__RepositoryComponent__Alternatives");
 					put(grammarAccess.getEStringAccess().getAlternatives(), "rule__EString__Alternatives");
 					put(grammarAccess.getSignatureAccess().getAlternatives_0(), "rule__Signature__Alternatives_0");
 					put(grammarAccess.getPrimitiveTypeEnumAccess().getAlternatives(), "rule__PrimitiveTypeEnum__Alternatives");
 					put(grammarAccess.getRepositoryAccess().getGroup(), "rule__Repository__Group__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_3(), "rule__Repository__Group_3__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_3_3(), "rule__Repository__Group_3_3__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_4(), "rule__Repository__Group_4__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_4_3(), "rule__Repository__Group_4_3__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_5(), "rule__Repository__Group_5__0");
-					put(grammarAccess.getRepositoryAccess().getGroup_5_3(), "rule__Repository__Group_5_3__0");
 					put(grammarAccess.getInterfaceAccess().getGroup(), "rule__Interface__Group__0");
 					put(grammarAccess.getInterfaceAccess().getGroup_3(), "rule__Interface__Group_3__0");
 					put(grammarAccess.getInterfaceAccess().getGroup_3_3(), "rule__Interface__Group_3_3__0");
@@ -114,12 +109,9 @@ public class MyDslTestParser extends AbstractContentAssistParser {
 					put(grammarAccess.getProvidedDelegationConnectorAccess().getGroup(), "rule__ProvidedDelegationConnector__Group__0");
 					put(grammarAccess.getRequiredDelegationConnectorAccess().getGroup(), "rule__RequiredDelegationConnector__Group__0");
 					put(grammarAccess.getRepositoryAccess().getNameAssignment_1(), "rule__Repository__NameAssignment_1");
-					put(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_2(), "rule__Repository__DatatypesAssignment_3_2");
-					put(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_3_1(), "rule__Repository__DatatypesAssignment_3_3_1");
-					put(grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_2(), "rule__Repository__InterfacesAssignment_4_2");
-					put(grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_3_1(), "rule__Repository__InterfacesAssignment_4_3_1");
-					put(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2(), "rule__Repository__ComponentsAssignment_5_2");
-					put(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1(), "rule__Repository__ComponentsAssignment_5_3_1");
+					put(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_0(), "rule__Repository__DatatypesAssignment_3_0");
+					put(grammarAccess.getRepositoryAccess().getInterfacesAssignment_3_1(), "rule__Repository__InterfacesAssignment_3_1");
+					put(grammarAccess.getRepositoryAccess().getComponentsAssignment_3_2(), "rule__Repository__ComponentsAssignment_3_2");
 					put(grammarAccess.getInterfaceAccess().getNameAssignment_1(), "rule__Interface__NameAssignment_1");
 					put(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_2(), "rule__Interface__ParentInterfacesAssignment_3_2");
 					put(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_3_1(), "rule__Interface__ParentInterfacesAssignment_3_3_1");
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g
index 86bee743dfab282fed639f2a068472ecd0cb8a03..5218a73b3a86994142c2bdff724ed2aec7250674 100644
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g
+++ b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g
@@ -692,803 +692,89 @@ finally {
 
 
 
-rule__DataType__Alternatives
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); }
-	ruleCollectionDataType
-{ after(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); }
-)
-
-    |(
-{ before(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); }
-	ruleCompositeDataType
-{ after(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); }
-)
-
-    |(
-{ before(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); }
-	rulePrimitiveDataType
-{ after(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__RepositoryComponent__Alternatives
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); }
-	ruleRepositoryComponent_Impl
-{ after(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); }
-)
-
-    |(
-{ before(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); }
-	ruleBasicComponent
-{ after(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); }
-)
-
-    |(
-{ before(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); }
-	ruleCompositeComponent
-{ after(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); }
-)
-
-    |(
-{ before(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); }
-	ruleSubSystem
-{ after(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__EString__Alternatives
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); }
-	RULE_STRING
-{ after(grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); }
-)
-
-    |(
-{ before(grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); }
-	RULE_ID
-{ after(grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Signature__Alternatives_0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getSignatureAccess().getReturnTypeAssignment_0_0()); }
-(rule__Signature__ReturnTypeAssignment_0_0)
-{ after(grammarAccess.getSignatureAccess().getReturnTypeAssignment_0_0()); }
-)
-
-    |(
-{ before(grammarAccess.getSignatureAccess().getVoidKeyword_0_1()); }
-
-	'void' 
-
-{ after(grammarAccess.getSignatureAccess().getVoidKeyword_0_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__PrimitiveTypeEnum__Alternatives
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); }
-(	'INT' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); }
-(	'STRING' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); }
-(	'BOOL' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); }
-(	'DOUBLE' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); }
-(	'CHAR' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); }
-(	'BYTE' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); }
-)
-
-    |(
-{ before(grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); }
-(	'LONG' 
-)
-{ after(grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-rule__Repository__Group__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__0__Impl
-	rule__Repository__Group__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getRepositoryKeyword_0()); }
-
-	'Repository' 
-
-{ after(grammarAccess.getRepositoryAccess().getRepositoryKeyword_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__1__Impl
-	rule__Repository__Group__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getNameAssignment_1()); }
-(rule__Repository__NameAssignment_1)
-{ after(grammarAccess.getRepositoryAccess().getNameAssignment_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__2__Impl
-	rule__Repository__Group__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2()); }
-
-	'{' 
-
-{ after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__3__Impl
-	rule__Repository__Group__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_3()); }
-(rule__Repository__Group_3__0)?
-{ after(grammarAccess.getRepositoryAccess().getGroup_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__4__Impl
-	rule__Repository__Group__5
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_4()); }
-(rule__Repository__Group_4__0)?
-{ after(grammarAccess.getRepositoryAccess().getGroup_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__5
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__5__Impl
-	rule__Repository__Group__6
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__5__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_5()); }
-(rule__Repository__Group_5__0)?
-{ after(grammarAccess.getRepositoryAccess().getGroup_5()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group__6
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group__6__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group__6__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Repository__Group_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3__0__Impl
-	rule__Repository__Group_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getDatatypesKeyword_3_0()); }
-
-	'datatypes' 
-
-{ after(grammarAccess.getRepositoryAccess().getDatatypesKeyword_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3__1__Impl
-	rule__Repository__Group_3__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_3__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3__2__Impl
-	rule__Repository__Group_3__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_2()); }
-(rule__Repository__DatatypesAssignment_3_2)
-{ after(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_3__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3__3__Impl
-	rule__Repository__Group_3__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3__3__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getGroup_3_3()); }
-(rule__Repository__Group_3_3__0)*
-{ after(grammarAccess.getRepositoryAccess().getGroup_3_3()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_3__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3__4__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3__4__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
-
-
-rule__Repository__Group_3_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3_3__0__Impl
-	rule__Repository__Group_3_3__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3_3__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0()); }
-
-	',' 
-
-{ after(grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_3_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_3_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_3_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_3_1()); }
-(rule__Repository__DatatypesAssignment_3_3_1)
-{ after(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_3_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-rule__Repository__Group_4__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4__0__Impl
-	rule__Repository__Group_4__1
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_4__0__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getInterfacesKeyword_4_0()); }
-
-	'interfaces' 
-
-{ after(grammarAccess.getRepositoryAccess().getInterfacesKeyword_4_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_4__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4__1__Impl
-	rule__Repository__Group_4__2
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_4__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1()); }
-
-	'{' 
-
-{ after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_4__2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4__2__Impl
-	rule__Repository__Group_4__3
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_4__2__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_2()); }
-(rule__Repository__InterfacesAssignment_4_2)
-{ after(grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_2()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-rule__Repository__Group_4__3
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4__3__Impl
-	rule__Repository__Group_4__4
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__Group_4__3__Impl
+rule__Repository__Alternatives_3
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getGroup_4_3()); }
-(rule__Repository__Group_4_3__0)*
-{ after(grammarAccess.getRepositoryAccess().getGroup_4_3()); }
+{ before(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_0()); }
+(rule__Repository__DatatypesAssignment_3_0)
+{ after(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_0()); }
 )
 
-;
-finally {
-	restoreStackSize(stackSize);
-}
+    |(
+{ before(grammarAccess.getRepositoryAccess().getInterfacesAssignment_3_1()); }
+(rule__Repository__InterfacesAssignment_3_1)
+{ after(grammarAccess.getRepositoryAccess().getInterfacesAssignment_3_1()); }
+)
 
+    |(
+{ before(grammarAccess.getRepositoryAccess().getComponentsAssignment_3_2()); }
+(rule__Repository__ComponentsAssignment_3_2)
+{ after(grammarAccess.getRepositoryAccess().getComponentsAssignment_3_2()); }
+)
 
-rule__Repository__Group_4__4
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4__4__Impl
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__Group_4__4__Impl
+rule__DataType__Alternatives
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4()); }
+{ before(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); }
+	ruleCollectionDataType
+{ after(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); }
 )
 
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
-
-
-
-
-
-
-
+    |(
+{ before(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); }
+	ruleCompositeDataType
+{ after(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); }
+)
 
+    |(
+{ before(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); }
+	rulePrimitiveDataType
+{ after(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); }
+)
 
-rule__Repository__Group_4_3__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_4_3__0__Impl
-	rule__Repository__Group_4_3__1
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__Group_4_3__0__Impl
+rule__RepositoryComponent__Alternatives
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0()); }
+{ before(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); }
+	ruleRepositoryComponent_Impl
+{ after(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); }
+)
 
-	',' 
+    |(
+{ before(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); }
+	ruleBasicComponent
+{ after(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); }
+)
 
-{ after(grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0()); }
+    |(
+{ before(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); }
+	ruleCompositeComponent
+{ after(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); }
+)
+
+    |(
+{ before(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); }
+	ruleSubSystem
+{ after(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); }
 )
 
 ;
@@ -1496,62 +782,104 @@ finally {
 	restoreStackSize(stackSize);
 }
 
-
-rule__Repository__Group_4_3__1
+rule__EString__Alternatives
     @init {
 		int stackSize = keepStackSize();
     }
 :
-	rule__Repository__Group_4_3__1__Impl
+(
+{ before(grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); }
+	RULE_STRING
+{ after(grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); }
+)
+
+    |(
+{ before(grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); }
+	RULE_ID
+{ after(grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); }
+)
+
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__Group_4_3__1__Impl
+rule__Signature__Alternatives_0
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_3_1()); }
-(rule__Repository__InterfacesAssignment_4_3_1)
-{ after(grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_3_1()); }
+{ before(grammarAccess.getSignatureAccess().getReturnTypeAssignment_0_0()); }
+(rule__Signature__ReturnTypeAssignment_0_0)
+{ after(grammarAccess.getSignatureAccess().getReturnTypeAssignment_0_0()); }
 )
 
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-
-
+    |(
+{ before(grammarAccess.getSignatureAccess().getVoidKeyword_0_1()); }
 
+	'void' 
 
+{ after(grammarAccess.getSignatureAccess().getVoidKeyword_0_1()); }
+)
 
-rule__Repository__Group_5__0
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_5__0__Impl
-	rule__Repository__Group_5__1
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__Group_5__0__Impl
+rule__PrimitiveTypeEnum__Alternatives
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0()); }
+{ before(grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); }
+(	'INT' 
+)
+{ after(grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); }
+)
+
+    |(
+{ before(grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); }
+(	'STRING' 
+)
+{ after(grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); }
+)
+
+    |(
+{ before(grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); }
+(	'BOOL' 
+)
+{ after(grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); }
+)
 
-	'components' 
+    |(
+{ before(grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); }
+(	'DOUBLE' 
+)
+{ after(grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); }
+)
+
+    |(
+{ before(grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); }
+(	'CHAR' 
+)
+{ after(grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); }
+)
+
+    |(
+{ before(grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); }
+(	'BYTE' 
+)
+{ after(grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); }
+)
 
-{ after(grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0()); }
+    |(
+{ before(grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); }
+(	'LONG' 
+)
+{ after(grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); }
 )
 
 ;
@@ -1560,29 +888,30 @@ finally {
 }
 
 
-rule__Repository__Group_5__1
+
+rule__Repository__Group__0
     @init {
 		int stackSize = keepStackSize();
     }
 :
-	rule__Repository__Group_5__1__Impl
-	rule__Repository__Group_5__2
+	rule__Repository__Group__0__Impl
+	rule__Repository__Group__1
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__Group_5__1__Impl
+rule__Repository__Group__0__Impl
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1()); }
+{ before(grammarAccess.getRepositoryAccess().getRepositoryKeyword_0()); }
 
-	'{' 
+	'Repository' 
 
-{ after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1()); }
+{ after(grammarAccess.getRepositoryAccess().getRepositoryKeyword_0()); }
 )
 
 ;
@@ -1591,27 +920,27 @@ finally {
 }
 
 
-rule__Repository__Group_5__2
+rule__Repository__Group__1
     @init {
 		int stackSize = keepStackSize();
     }
 :
-	rule__Repository__Group_5__2__Impl
-	rule__Repository__Group_5__3
+	rule__Repository__Group__1__Impl
+	rule__Repository__Group__2
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__Group_5__2__Impl
+rule__Repository__Group__1__Impl
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2()); }
-(rule__Repository__ComponentsAssignment_5_2)
-{ after(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2()); }
+{ before(grammarAccess.getRepositoryAccess().getNameAssignment_1()); }
+(rule__Repository__NameAssignment_1)
+{ after(grammarAccess.getRepositoryAccess().getNameAssignment_1()); }
 )
 
 ;
@@ -1620,27 +949,29 @@ finally {
 }
 
 
-rule__Repository__Group_5__3
+rule__Repository__Group__2
     @init {
 		int stackSize = keepStackSize();
     }
 :
-	rule__Repository__Group_5__3__Impl
-	rule__Repository__Group_5__4
+	rule__Repository__Group__2__Impl
+	rule__Repository__Group__3
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__Group_5__3__Impl
+rule__Repository__Group__2__Impl
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getGroup_5_3()); }
-(rule__Repository__Group_5_3__0)*
-{ after(grammarAccess.getRepositoryAccess().getGroup_5_3()); }
+{ before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2()); }
+
+	'{' 
+
+{ after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2()); }
 )
 
 ;
@@ -1649,28 +980,27 @@ finally {
 }
 
 
-rule__Repository__Group_5__4
+rule__Repository__Group__3
     @init {
 		int stackSize = keepStackSize();
     }
 :
-	rule__Repository__Group_5__4__Impl
+	rule__Repository__Group__3__Impl
+	rule__Repository__Group__4
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__Group_5__4__Impl
+rule__Repository__Group__3__Impl
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4()); }
-
-	'}' 
-
-{ after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4()); }
+{ before(grammarAccess.getRepositoryAccess().getAlternatives_3()); }
+(rule__Repository__Alternatives_3)*
+{ after(grammarAccess.getRepositoryAccess().getAlternatives_3()); }
 )
 
 ;
@@ -1679,39 +1009,28 @@ finally {
 }
 
 
-
-
-
-
-
-
-
-
-
-
-rule__Repository__Group_5_3__0
+rule__Repository__Group__4
     @init {
 		int stackSize = keepStackSize();
     }
 :
-	rule__Repository__Group_5_3__0__Impl
-	rule__Repository__Group_5_3__1
+	rule__Repository__Group__4__Impl
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__Group_5_3__0__Impl
+rule__Repository__Group__4__Impl
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getCommaKeyword_5_3_0()); }
+{ before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4()); }
 
-	',' 
+	'}' 
 
-{ after(grammarAccess.getRepositoryAccess().getCommaKeyword_5_3_0()); }
+{ after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4()); }
 )
 
 ;
@@ -1720,32 +1039,10 @@ finally {
 }
 
 
-rule__Repository__Group_5_3__1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-	rule__Repository__Group_5_3__1__Impl
-;
-finally {
-	restoreStackSize(stackSize);
-}
 
-rule__Repository__Group_5_3__1__Impl
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1()); }
-(rule__Repository__ComponentsAssignment_5_3_1)
-{ after(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1()); }
-)
 
-;
-finally {
-	restoreStackSize(stackSize);
-}
+
+
 
 
 
@@ -4921,11 +4218,11 @@ rule__ProvidedRole__Group__1__Impl
     }
 :
 (
-{ before(grammarAccess.getProvidedRoleAccess().getProvidesKeyword_1()); }
+{ before(grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_1()); }
 
-	'provides' 
+	'ProvidedRole' 
 
-{ after(grammarAccess.getProvidedRoleAccess().getProvidesKeyword_1()); }
+{ after(grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_1()); }
 )
 
 ;
@@ -5080,11 +4377,11 @@ rule__RequiredRole__Group__1__Impl
     }
 :
 (
-{ before(grammarAccess.getRequiredRoleAccess().getRequiresKeyword_1()); }
+{ before(grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_1()); }
 
-	'requires' 
+	'RequiredRole' 
 
-{ after(grammarAccess.getRequiredRoleAccess().getRequiresKeyword_1()); }
+{ after(grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_1()); }
 )
 
 ;
@@ -10038,59 +9335,14 @@ finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__DatatypesAssignment_3_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_2_0()); }
-	ruleDataType{ after(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__DatatypesAssignment_3_3_1
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_3_1_0()); }
-	ruleDataType{ after(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_3_1_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__InterfacesAssignment_4_2
-    @init {
-		int stackSize = keepStackSize();
-    }
-:
-(
-{ before(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_2_0()); }
-	ruleInterface{ after(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_2_0()); }
-)
-
-;
-finally {
-	restoreStackSize(stackSize);
-}
-
-rule__Repository__InterfacesAssignment_4_3_1
+rule__Repository__DatatypesAssignment_3_0
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_3_1_0()); }
-	ruleInterface{ after(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_3_1_0()); }
+{ before(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_0_0()); }
+	ruleDataType{ after(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_0_0()); }
 )
 
 ;
@@ -10098,14 +9350,14 @@ finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__ComponentsAssignment_5_2
+rule__Repository__InterfacesAssignment_3_1
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); }
-	ruleRepositoryComponent{ after(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); }
+{ before(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_3_1_0()); }
+	ruleInterface{ after(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_3_1_0()); }
 )
 
 ;
@@ -10113,14 +9365,14 @@ finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Repository__ComponentsAssignment_5_3_1
+rule__Repository__ComponentsAssignment_3_2
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); }
-	ruleRepositoryComponent{ after(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); }
+{ before(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_3_2_0()); }
+	ruleRepositoryComponent{ after(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_3_2_0()); }
 )
 
 ;
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.tokens b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.tokens
index c6e3eaeb4b6af5207166418a5590f75f5fb9cbb2..b084c6998ea2778b89af8f7cb77fe16cea548476 100644
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.tokens
+++ b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.tokens
@@ -1,8 +1,5 @@
-T__68=68
-T__69=69
 RULE_ID=5
 T__66=66
-T__67=67
 T__64=64
 T__29=29
 T__65=65
@@ -64,62 +61,59 @@ T__37=37
 T__38=38
 T__39=39
 RULE_WS=9
-'requiredRole'=59
-'type'=41
+'requiredRole'=56
+'type'=38
 'DOUBLE'=15
-'providedRoles'=33
-'outerProvidedRole'=66
-'requiringAssemblyContext'=62
-'BasicComponent'=47
-'innerType'=36
-'CompositeComponent'=48
-'InnerDeclaration'=43
-'CompositeDataType'=37
-'components'=25
-'innerRequiredRole'=68
-'assembly'=49
-'encapsulatedComponent'=57
-'RequiredDelegationConnector'=67
+'providedRoles'=30
+'outerProvidedRole'=63
+'requiringAssemblyContext'=59
+'BasicComponent'=44
+'innerType'=33
+'CompositeComponent'=45
+'InnerDeclaration'=40
+'CompositeDataType'=34
+'RequiredRole'=43
+'innerRequiredRole'=65
+'assembly'=46
+'encapsulatedComponent'=54
+'RequiredDelegationConnector'=64
 '{'=20
-'assemblyConnectors'=53
-'Interface'=26
+'assemblyConnectors'=50
 'void'=11
-'parentInterfaces'=27
-'('=28
-'ref'=42
-'innerProvidedRole'=65
-','=23
-'SubSystem'=50
+'Interface'=22
+'parentInterfaces'=23
+'('=24
+'ref'=39
+'innerProvidedRole'=62
+','=26
+'SubSystem'=47
 'BOOL'=14
 'INT'=12
-'ComposedStructureAssembly'=51
-'providedRole'=60
-'providingAssemblyContext'=61
-'relationship'=32
-'PrimitiveDataType'=40
-'assemblyContexts'=52
-'dataType'=44
-'requires'=46
-'requiredRoles'=34
+'ComposedStructureAssembly'=48
+'providedRole'=57
+'providingAssemblyContext'=58
+'relationship'=29
+'PrimitiveDataType'=37
+'assemblyContexts'=49
+'dataType'=41
+'requiredRoles'=31
 'Repository'=19
-'interfaces'=24
 'CHAR'=16
-')'=29
+')'=25
 'LONG'=18
-'outerRequiredRole'=69
-'parentTypes'=38
-'AssemblyContext'=56
-'innerDeclarations'=39
+'outerRequiredRole'=66
+'parentTypes'=35
+'AssemblyContext'=53
+'innerDeclarations'=36
 '}'=21
-'datatypes'=22
-'AssemblyConnector'=58
-'ProvidedDelegationConnector'=63
-'CollectionDataType'=35
-'RepositoryComponent'=31
+'AssemblyConnector'=55
+'ProvidedRole'=42
+'ProvidedDelegationConnector'=60
+'CollectionDataType'=32
+'RepositoryComponent'=28
 'STRING'=13
-'signatures'=30
-'provides'=45
-'providedDelegationConnectors'=54
-'assemblyContext'=64
+'signatures'=27
+'providedDelegationConnectors'=51
+'assemblyContext'=61
 'BYTE'=17
-'requiredDelegationConnectors'=55
+'requiredDelegationConnectors'=52
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestLexer.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestLexer.java
index 1cb03c2499bc060f26abcff2b4f9c4357b9e325b..0932a9426542d51721d97da10d245a048c5a17aa 100644
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestLexer.java
+++ b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestLexer.java
@@ -12,13 +12,10 @@ import java.util.ArrayList;
 
 @SuppressWarnings("all")
 public class InternalMyDslTestLexer extends Lexer {
-    public static final int T__68=68;
-    public static final int T__69=69;
     public static final int RULE_ID=5;
     public static final int T__66=66;
-    public static final int T__67=67;
-    public static final int T__29=29;
     public static final int T__64=64;
+    public static final int T__29=29;
     public static final int T__28=28;
     public static final int T__65=65;
     public static final int T__27=27;
@@ -29,8 +26,8 @@ public class InternalMyDslTestLexer extends Lexer {
     public static final int T__24=24;
     public static final int T__23=23;
     public static final int T__22=22;
-    public static final int RULE_ANY_OTHER=10;
     public static final int T__21=21;
+    public static final int RULE_ANY_OTHER=10;
     public static final int T__20=20;
     public static final int T__61=61;
     public static final int EOF=-1;
@@ -327,10 +324,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__22;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:22:7: ( 'datatypes' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:22:9: 'datatypes'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:22:7: ( 'Interface' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:22:9: 'Interface'
             {
-            match("datatypes"); 
+            match("Interface"); 
 
 
             }
@@ -348,10 +345,11 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__23;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:23:7: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:23:9: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:23:7: ( 'parentInterfaces' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:23:9: 'parentInterfaces'
             {
-            match(','); 
+            match("parentInterfaces"); 
+
 
             }
 
@@ -368,11 +366,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__24;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:24:7: ( 'interfaces' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:24:9: 'interfaces'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:24:7: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:24:9: '('
             {
-            match("interfaces"); 
-
+            match('('); 
 
             }
 
@@ -389,11 +386,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__25;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:25:7: ( 'components' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:25:9: 'components'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:25:7: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:25:9: ')'
             {
-            match("components"); 
-
+            match(')'); 
 
             }
 
@@ -410,11 +406,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__26;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:26:7: ( 'Interface' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:26:9: 'Interface'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:26:7: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:26:9: ','
             {
-            match("Interface"); 
-
+            match(','); 
 
             }
 
@@ -431,10 +426,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__27;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:27:7: ( 'parentInterfaces' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:27:9: 'parentInterfaces'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:27:7: ( 'signatures' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:27:9: 'signatures'
             {
-            match("parentInterfaces"); 
+            match("signatures"); 
 
 
             }
@@ -452,10 +447,11 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__28;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:28:7: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:28:9: '('
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:28:7: ( 'RepositoryComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:28:9: 'RepositoryComponent'
             {
-            match('('); 
+            match("RepositoryComponent"); 
+
 
             }
 
@@ -472,10 +468,11 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__29;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:29:7: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:29:9: ')'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:29:7: ( 'relationship' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:29:9: 'relationship'
             {
-            match(')'); 
+            match("relationship"); 
+
 
             }
 
@@ -492,10 +489,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__30;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:30:7: ( 'signatures' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:30:9: 'signatures'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:30:7: ( 'providedRoles' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:30:9: 'providedRoles'
             {
-            match("signatures"); 
+            match("providedRoles"); 
 
 
             }
@@ -513,10 +510,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__31;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:31:7: ( 'RepositoryComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:31:9: 'RepositoryComponent'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:31:7: ( 'requiredRoles' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:31:9: 'requiredRoles'
             {
-            match("RepositoryComponent"); 
+            match("requiredRoles"); 
 
 
             }
@@ -534,10 +531,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__32;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:32:7: ( 'relationship' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:32:9: 'relationship'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:32:7: ( 'CollectionDataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:32:9: 'CollectionDataType'
             {
-            match("relationship"); 
+            match("CollectionDataType"); 
 
 
             }
@@ -555,10 +552,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__33;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:33:7: ( 'providedRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:33:9: 'providedRoles'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:33:7: ( 'innerType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:33:9: 'innerType'
             {
-            match("providedRoles"); 
+            match("innerType"); 
 
 
             }
@@ -576,10 +573,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__34;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:34:7: ( 'requiredRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:34:9: 'requiredRoles'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:34:7: ( 'CompositeDataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:34:9: 'CompositeDataType'
             {
-            match("requiredRoles"); 
+            match("CompositeDataType"); 
 
 
             }
@@ -597,10 +594,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__35;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:35:7: ( 'CollectionDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:35:9: 'CollectionDataType'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:35:7: ( 'parentTypes' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:35:9: 'parentTypes'
             {
-            match("CollectionDataType"); 
+            match("parentTypes"); 
 
 
             }
@@ -618,10 +615,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__36;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:36:7: ( 'innerType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:36:9: 'innerType'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:36:7: ( 'innerDeclarations' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:36:9: 'innerDeclarations'
             {
-            match("innerType"); 
+            match("innerDeclarations"); 
 
 
             }
@@ -639,10 +636,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__37;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:37:7: ( 'CompositeDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:37:9: 'CompositeDataType'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:37:7: ( 'PrimitiveDataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:37:9: 'PrimitiveDataType'
             {
-            match("CompositeDataType"); 
+            match("PrimitiveDataType"); 
 
 
             }
@@ -660,10 +657,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__38;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:38:7: ( 'parentTypes' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:38:9: 'parentTypes'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:38:7: ( 'type' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:38:9: 'type'
             {
-            match("parentTypes"); 
+            match("type"); 
 
 
             }
@@ -681,10 +678,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__39;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:39:7: ( 'innerDeclarations' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:39:9: 'innerDeclarations'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:39:7: ( 'ref' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:39:9: 'ref'
             {
-            match("innerDeclarations"); 
+            match("ref"); 
 
 
             }
@@ -702,10 +699,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__40;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:40:7: ( 'PrimitiveDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:40:9: 'PrimitiveDataType'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:40:7: ( 'InnerDeclaration' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:40:9: 'InnerDeclaration'
             {
-            match("PrimitiveDataType"); 
+            match("InnerDeclaration"); 
 
 
             }
@@ -723,10 +720,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__41;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:41:7: ( 'type' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:41:9: 'type'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:41:7: ( 'dataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:41:9: 'dataType'
             {
-            match("type"); 
+            match("dataType"); 
 
 
             }
@@ -744,10 +741,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__42;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:42:7: ( 'ref' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:42:9: 'ref'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:42:7: ( 'ProvidedRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:42:9: 'ProvidedRole'
             {
-            match("ref"); 
+            match("ProvidedRole"); 
 
 
             }
@@ -765,10 +762,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__43;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:43:7: ( 'InnerDeclaration' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:43:9: 'InnerDeclaration'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:43:7: ( 'RequiredRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:43:9: 'RequiredRole'
             {
-            match("InnerDeclaration"); 
+            match("RequiredRole"); 
 
 
             }
@@ -786,10 +783,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__44;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:44:7: ( 'dataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:44:9: 'dataType'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:44:7: ( 'BasicComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:44:9: 'BasicComponent'
             {
-            match("dataType"); 
+            match("BasicComponent"); 
 
 
             }
@@ -807,10 +804,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__45;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:45:7: ( 'provides' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:45:9: 'provides'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:45:7: ( 'CompositeComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:45:9: 'CompositeComponent'
             {
-            match("provides"); 
+            match("CompositeComponent"); 
 
 
             }
@@ -828,10 +825,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__46;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:46:7: ( 'requires' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:46:9: 'requires'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:46:7: ( 'assembly' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:46:9: 'assembly'
             {
-            match("requires"); 
+            match("assembly"); 
 
 
             }
@@ -849,10 +846,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__47;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:47:7: ( 'BasicComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:47:9: 'BasicComponent'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:47:7: ( 'SubSystem' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:47:9: 'SubSystem'
             {
-            match("BasicComponent"); 
+            match("SubSystem"); 
 
 
             }
@@ -870,10 +867,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__48;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:48:7: ( 'CompositeComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:48:9: 'CompositeComponent'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:48:7: ( 'ComposedStructureAssembly' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:48:9: 'ComposedStructureAssembly'
             {
-            match("CompositeComponent"); 
+            match("ComposedStructureAssembly"); 
 
 
             }
@@ -891,10 +888,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__49;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:49:7: ( 'assembly' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:49:9: 'assembly'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:49:7: ( 'assemblyContexts' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:49:9: 'assemblyContexts'
             {
-            match("assembly"); 
+            match("assemblyContexts"); 
 
 
             }
@@ -912,10 +909,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__50;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:50:7: ( 'SubSystem' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:50:9: 'SubSystem'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:50:7: ( 'assemblyConnectors' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:50:9: 'assemblyConnectors'
             {
-            match("SubSystem"); 
+            match("assemblyConnectors"); 
 
 
             }
@@ -933,10 +930,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__51;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:51:7: ( 'ComposedStructureAssembly' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:51:9: 'ComposedStructureAssembly'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:51:7: ( 'providedDelegationConnectors' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:51:9: 'providedDelegationConnectors'
             {
-            match("ComposedStructureAssembly"); 
+            match("providedDelegationConnectors"); 
 
 
             }
@@ -954,10 +951,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__52;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:52:7: ( 'assemblyContexts' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:52:9: 'assemblyContexts'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:52:7: ( 'requiredDelegationConnectors' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:52:9: 'requiredDelegationConnectors'
             {
-            match("assemblyContexts"); 
+            match("requiredDelegationConnectors"); 
 
 
             }
@@ -975,10 +972,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__53;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:53:7: ( 'assemblyConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:53:9: 'assemblyConnectors'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:53:7: ( 'AssemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:53:9: 'AssemblyContext'
             {
-            match("assemblyConnectors"); 
+            match("AssemblyContext"); 
 
 
             }
@@ -996,10 +993,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__54;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:54:7: ( 'providedDelegationConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:54:9: 'providedDelegationConnectors'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:54:7: ( 'encapsulatedComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:54:9: 'encapsulatedComponent'
             {
-            match("providedDelegationConnectors"); 
+            match("encapsulatedComponent"); 
 
 
             }
@@ -1017,10 +1014,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__55;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:55:7: ( 'requiredDelegationConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:55:9: 'requiredDelegationConnectors'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:55:7: ( 'AssemblyConnector' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:55:9: 'AssemblyConnector'
             {
-            match("requiredDelegationConnectors"); 
+            match("AssemblyConnector"); 
 
 
             }
@@ -1038,10 +1035,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__56;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:56:7: ( 'AssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:56:9: 'AssemblyContext'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:56:7: ( 'requiredRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:56:9: 'requiredRole'
             {
-            match("AssemblyContext"); 
+            match("requiredRole"); 
 
 
             }
@@ -1059,10 +1056,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__57;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:57:7: ( 'encapsulatedComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:57:9: 'encapsulatedComponent'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:57:7: ( 'providedRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:57:9: 'providedRole'
             {
-            match("encapsulatedComponent"); 
+            match("providedRole"); 
 
 
             }
@@ -1080,10 +1077,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__58;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:58:7: ( 'AssemblyConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:58:9: 'AssemblyConnector'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:58:7: ( 'providingAssemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:58:9: 'providingAssemblyContext'
             {
-            match("AssemblyConnector"); 
+            match("providingAssemblyContext"); 
 
 
             }
@@ -1101,10 +1098,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__59;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:59:7: ( 'requiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:59:9: 'requiredRole'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:59:7: ( 'requiringAssemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:59:9: 'requiringAssemblyContext'
             {
-            match("requiredRole"); 
+            match("requiringAssemblyContext"); 
 
 
             }
@@ -1122,10 +1119,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__60;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:60:7: ( 'providedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:60:9: 'providedRole'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:60:7: ( 'ProvidedDelegationConnector' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:60:9: 'ProvidedDelegationConnector'
             {
-            match("providedRole"); 
+            match("ProvidedDelegationConnector"); 
 
 
             }
@@ -1143,10 +1140,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__61;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:61:7: ( 'providingAssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:61:9: 'providingAssemblyContext'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:61:7: ( 'assemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:61:9: 'assemblyContext'
             {
-            match("providingAssemblyContext"); 
+            match("assemblyContext"); 
 
 
             }
@@ -1164,10 +1161,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__62;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:62:7: ( 'requiringAssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:62:9: 'requiringAssemblyContext'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:62:7: ( 'innerProvidedRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:62:9: 'innerProvidedRole'
             {
-            match("requiringAssemblyContext"); 
+            match("innerProvidedRole"); 
 
 
             }
@@ -1185,10 +1182,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__63;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:63:7: ( 'ProvidedDelegationConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:63:9: 'ProvidedDelegationConnector'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:63:7: ( 'outerProvidedRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:63:9: 'outerProvidedRole'
             {
-            match("ProvidedDelegationConnector"); 
+            match("outerProvidedRole"); 
 
 
             }
@@ -1206,10 +1203,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__64;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:64:7: ( 'assemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:64:9: 'assemblyContext'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:64:7: ( 'RequiredDelegationConnector' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:64:9: 'RequiredDelegationConnector'
             {
-            match("assemblyContext"); 
+            match("RequiredDelegationConnector"); 
 
 
             }
@@ -1227,10 +1224,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__65;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:65:7: ( 'innerProvidedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:65:9: 'innerProvidedRole'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:65:7: ( 'innerRequiredRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:65:9: 'innerRequiredRole'
             {
-            match("innerProvidedRole"); 
+            match("innerRequiredRole"); 
 
 
             }
@@ -1248,71 +1245,8 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__66;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:66:7: ( 'outerProvidedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:66:9: 'outerProvidedRole'
-            {
-            match("outerProvidedRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__66"
-
-    // $ANTLR start "T__67"
-    public final void mT__67() throws RecognitionException {
-        try {
-            int _type = T__67;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:67:7: ( 'RequiredDelegationConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:67:9: 'RequiredDelegationConnector'
-            {
-            match("RequiredDelegationConnector"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__67"
-
-    // $ANTLR start "T__68"
-    public final void mT__68() throws RecognitionException {
-        try {
-            int _type = T__68;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:68:7: ( 'innerRequiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:68:9: 'innerRequiredRole'
-            {
-            match("innerRequiredRole"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__68"
-
-    // $ANTLR start "T__69"
-    public final void mT__69() throws RecognitionException {
-        try {
-            int _type = T__69;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:69:7: ( 'outerRequiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:69:9: 'outerRequiredRole'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:66:7: ( 'outerRequiredRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:66:9: 'outerRequiredRole'
             {
             match("outerRequiredRole"); 
 
@@ -1325,17 +1259,17 @@ public class InternalMyDslTestLexer extends Lexer {
         finally {
         }
     }
-    // $ANTLR end "T__69"
+    // $ANTLR end "T__66"
 
     // $ANTLR start "RULE_ID"
     public final void mRULE_ID() throws RecognitionException {
         try {
             int _type = RULE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11403:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11403:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10655:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10655:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11403:11: ( '^' )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10655:11: ( '^' )?
             int alt1=2;
             int LA1_0 = input.LA(1);
 
@@ -1344,7 +1278,7 @@ public class InternalMyDslTestLexer extends Lexer {
             }
             switch (alt1) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11403:11: '^'
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10655:11: '^'
                     {
                     match('^'); 
 
@@ -1362,7 +1296,7 @@ public class InternalMyDslTestLexer extends Lexer {
                 recover(mse);
                 throw mse;}
 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11403:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10655:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             loop2:
             do {
                 int alt2=2;
@@ -1411,10 +1345,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11405:10: ( ( '0' .. '9' )+ )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11405:12: ( '0' .. '9' )+
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10657:10: ( ( '0' .. '9' )+ )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10657:12: ( '0' .. '9' )+
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11405:12: ( '0' .. '9' )+
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10657:12: ( '0' .. '9' )+
             int cnt3=0;
             loop3:
             do {
@@ -1428,7 +1362,7 @@ public class InternalMyDslTestLexer extends Lexer {
 
                 switch (alt3) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11405:13: '0' .. '9'
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10657:13: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -1460,10 +1394,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             int alt6=2;
             int LA6_0 = input.LA(1);
 
@@ -1481,10 +1415,10 @@ public class InternalMyDslTestLexer extends Lexer {
             }
             switch (alt6) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
                     {
                     match('\"'); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
                     loop4:
                     do {
                         int alt4=3;
@@ -1500,7 +1434,7 @@ public class InternalMyDslTestLexer extends Lexer {
 
                         switch (alt4) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -1516,7 +1450,7 @@ public class InternalMyDslTestLexer extends Lexer {
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:66: ~ ( ( '\\\\' | '\"' ) )
+                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:66: ~ ( ( '\\\\' | '\"' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
                     	        input.consume();
@@ -1541,10 +1475,10 @@ public class InternalMyDslTestLexer extends Lexer {
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
                     {
                     match('\''); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
                     loop5:
                     do {
                         int alt5=3;
@@ -1560,7 +1494,7 @@ public class InternalMyDslTestLexer extends Lexer {
 
                         switch (alt5) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -1576,7 +1510,7 @@ public class InternalMyDslTestLexer extends Lexer {
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11407:137: ~ ( ( '\\\\' | '\\'' ) )
+                    	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:137: ~ ( ( '\\\\' | '\\'' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
                     	        input.consume();
@@ -1619,12 +1553,12 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11409:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11409:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10661:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10661:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*"); 
 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11409:24: ( options {greedy=false; } : . )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10661:24: ( options {greedy=false; } : . )*
             loop7:
             do {
                 int alt7=2;
@@ -1649,7 +1583,7 @@ public class InternalMyDslTestLexer extends Lexer {
 
                 switch (alt7) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11409:52: .
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10661:52: .
             	    {
             	    matchAny(); 
 
@@ -1679,12 +1613,12 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11411:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11411:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10663:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10663:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("//"); 
 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11411:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10663:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop8:
             do {
                 int alt8=2;
@@ -1697,7 +1631,7 @@ public class InternalMyDslTestLexer extends Lexer {
 
                 switch (alt8) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11411:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10663:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -1717,7 +1651,7 @@ public class InternalMyDslTestLexer extends Lexer {
                 }
             } while (true);
 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11411:40: ( ( '\\r' )? '\\n' )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10663:40: ( ( '\\r' )? '\\n' )?
             int alt10=2;
             int LA10_0 = input.LA(1);
 
@@ -1726,9 +1660,9 @@ public class InternalMyDslTestLexer extends Lexer {
             }
             switch (alt10) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11411:41: ( '\\r' )? '\\n'
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10663:41: ( '\\r' )? '\\n'
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11411:41: ( '\\r' )?
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10663:41: ( '\\r' )?
                     int alt9=2;
                     int LA9_0 = input.LA(1);
 
@@ -1737,7 +1671,7 @@ public class InternalMyDslTestLexer extends Lexer {
                     }
                     switch (alt9) {
                         case 1 :
-                            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11411:41: '\\r'
+                            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10663:41: '\\r'
                             {
                             match('\r'); 
 
@@ -1769,10 +1703,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11413:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11413:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10665:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10665:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11413:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10665:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt11=0;
             loop11:
             do {
@@ -1826,8 +1760,8 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11415:16: ( . )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11415:18: .
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10667:16: ( . )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10667:18: .
             {
             matchAny(); 
 
@@ -1842,8 +1776,8 @@ public class InternalMyDslTestLexer extends Lexer {
     // $ANTLR end "RULE_ANY_OTHER"
 
     public void mTokens() throws RecognitionException {
-        // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | T__67 | T__68 | T__69 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
-        int alt12=66;
+        // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
+        int alt12=63;
         alt12 = dfa12.predict(input);
         switch (alt12) {
             case 1 :
@@ -2239,70 +2173,49 @@ public class InternalMyDslTestLexer extends Lexer {
                 }
                 break;
             case 57 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:346: T__67
-                {
-                mT__67(); 
-
-                }
-                break;
-            case 58 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:352: T__68
-                {
-                mT__68(); 
-
-                }
-                break;
-            case 59 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:358: T__69
-                {
-                mT__69(); 
-
-                }
-                break;
-            case 60 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:364: RULE_ID
+                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:346: RULE_ID
                 {
                 mRULE_ID(); 
 
                 }
                 break;
-            case 61 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:372: RULE_INT
+            case 58 :
+                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:354: RULE_INT
                 {
                 mRULE_INT(); 
 
                 }
                 break;
-            case 62 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:381: RULE_STRING
+            case 59 :
+                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:363: RULE_STRING
                 {
                 mRULE_STRING(); 
 
                 }
                 break;
-            case 63 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:393: RULE_ML_COMMENT
+            case 60 :
+                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:375: RULE_ML_COMMENT
                 {
                 mRULE_ML_COMMENT(); 
 
                 }
                 break;
-            case 64 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:409: RULE_SL_COMMENT
+            case 61 :
+                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:391: RULE_SL_COMMENT
                 {
                 mRULE_SL_COMMENT(); 
 
                 }
                 break;
-            case 65 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:425: RULE_WS
+            case 62 :
+                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:407: RULE_WS
                 {
                 mRULE_WS(); 
 
                 }
                 break;
-            case 66 :
-                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:433: RULE_ANY_OTHER
+            case 63 :
+                // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1:415: RULE_ANY_OTHER
                 {
                 mRULE_ANY_OTHER(); 
 
@@ -2316,127 +2229,122 @@ public class InternalMyDslTestLexer extends Lexer {
 
     protected DFA12 dfa12 = new DFA12(this);
     static final String DFA12_eotS =
-        "\1\uffff\10\43\2\uffff\1\43\1\uffff\3\43\2\uffff\10\43\1\41\2\uffff"+
-        "\3\41\2\uffff\1\43\1\uffff\14\43\2\uffff\1\43\1\uffff\4\43\2\uffff"+
-        "\10\43\5\uffff\1\43\1\151\27\43\1\u0081\7\43\1\u0089\1\uffff\4\43"+
-        "\1\u008e\1\u008f\2\43\1\u0092\2\43\1\u0095\13\43\1\uffff\2\43\1"+
-        "\u00a4\4\43\1\uffff\4\43\2\uffff\2\43\1\uffff\2\43\1\uffff\16\43"+
-        "\1\uffff\6\43\1\u00c9\2\43\1\u00cc\32\43\1\uffff\2\43\1\uffff\46"+
-        "\43\1\u0115\11\43\1\u0120\4\43\1\u0126\3\43\1\u012b\4\43\1\u0130"+
-        "\1\43\1\u0132\6\43\1\u013a\1\uffff\1\43\1\u013c\10\43\1\uffff\5"+
-        "\43\1\uffff\4\43\1\uffff\4\43\1\uffff\1\43\1\uffff\5\43\1\u0159"+
-        "\1\43\1\uffff\1\u015b\1\uffff\3\43\1\u015f\5\43\1\u0165\22\43\1"+
-        "\uffff\1\43\1\uffff\3\43\1\uffff\1\43\1\u017d\3\43\1\uffff\27\43"+
-        "\1\uffff\1\u019b\2\43\1\u019e\1\u01a0\27\43\1\u01b8\1\uffff\2\43"+
-        "\1\uffff\1\u01bb\1\uffff\14\43\1\u01c8\12\43\1\uffff\2\43\1\uffff"+
-        "\14\43\1\uffff\20\43\1\u01f2\1\43\1\u01f4\4\43\1\u01f9\11\43\1\u0203"+
-        "\6\43\1\u020a\1\uffff\1\43\1\uffff\4\43\1\uffff\1\43\1\u0211\4\43"+
-        "\1\u0216\1\u0217\1\u0218\1\uffff\4\43\1\u021d\1\43\1\uffff\1\43"+
-        "\1\u0220\1\43\1\u0222\1\u0223\1\u0224\1\uffff\1\u0225\3\43\3\uffff"+
-        "\4\43\1\uffff\1\43\1\u022e\1\uffff\1\43\4\uffff\1\43\1\u0231\6\43"+
-        "\1\uffff\2\43\1\uffff\16\43\1\u0248\7\43\1\uffff\12\43\1\u025a\1"+
-        "\43\1\u025c\1\43\1\u025e\2\43\1\uffff\1\43\1\uffff\1\43\1\uffff"+
-        "\4\43\1\u0267\2\43\1\u026a\1\uffff\1\u026b\1\u026c\3\uffff";
+        "\1\uffff\10\42\2\uffff\1\42\3\uffff\12\42\1\40\2\uffff\3\40\2\uffff"+
+        "\1\42\1\uffff\14\42\2\uffff\2\42\3\uffff\12\42\5\uffff\1\42\1\145"+
+        "\23\42\1\171\11\42\1\u0083\1\uffff\4\42\1\u0088\1\u0089\2\42\1\u008c"+
+        "\2\42\1\u008f\7\42\1\uffff\3\42\1\u009a\5\42\1\uffff\4\42\2\uffff"+
+        "\2\42\1\uffff\2\42\1\uffff\12\42\1\uffff\7\42\1\u00bd\2\42\1\u00c0"+
+        "\27\42\1\uffff\2\42\1\uffff\60\42\1\u0112\1\u0114\4\42\1\u0119\1"+
+        "\42\1\u011b\21\42\1\u012e\6\42\1\uffff\1\42\1\uffff\4\42\1\uffff"+
+        "\1\42\1\uffff\5\42\1\u0141\7\42\1\u0149\4\42\1\uffff\22\42\1\uffff"+
+        "\3\42\1\u0163\3\42\1\uffff\26\42\1\u017f\2\42\1\uffff\1\u0183\2"+
+        "\42\1\u0186\1\u0188\6\42\1\u018f\17\42\1\uffff\2\42\1\u01a1\1\uffff"+
+        "\2\42\1\uffff\1\u01a4\1\uffff\6\42\1\uffff\11\42\1\u01b4\7\42\1"+
+        "\uffff\2\42\1\uffff\17\42\1\uffff\20\42\1\u01de\1\42\1\u01e0\4\42"+
+        "\1\u01e5\6\42\1\u01ec\11\42\1\u01f6\1\uffff\1\42\1\uffff\4\42\1"+
+        "\uffff\1\42\1\u01fd\4\42\1\uffff\4\42\1\u0206\1\u0207\1\u0208\1"+
+        "\u0209\1\42\1\uffff\1\42\1\u020c\1\42\1\u020e\1\u020f\1\u0210\1"+
+        "\uffff\1\u0211\7\42\4\uffff\1\42\1\u021a\1\uffff\1\42\4\uffff\1"+
+        "\42\1\u021d\6\42\1\uffff\2\42\1\uffff\16\42\1\u0234\7\42\1\uffff"+
+        "\12\42\1\u0246\1\42\1\u0248\1\42\1\u024a\2\42\1\uffff\1\42\1\uffff"+
+        "\1\42\1\uffff\4\42\1\u0253\2\42\1\u0256\1\uffff\1\u0257\1\u0258"+
+        "\3\uffff";
     static final String DFA12_eofS =
-        "\u026d\uffff";
+        "\u0259\uffff";
     static final String DFA12_minS =
-        "\1\0\1\157\1\116\1\124\2\117\1\110\1\117\1\145\2\uffff\1\141\1"+
-        "\uffff\1\156\1\157\1\141\2\uffff\1\151\1\145\1\162\1\171\2\163\1"+
-        "\156\1\165\1\101\2\uffff\2\0\1\52\2\uffff\1\151\1\uffff\1\124\1"+
-        "\156\1\122\1\142\1\117\1\124\1\163\1\125\1\101\1\154\1\116\1\160"+
-        "\2\uffff\1\164\1\uffff\1\156\1\155\1\162\1\157\2\uffff\1\147\1\146"+
-        "\1\151\1\160\2\163\1\143\1\164\5\uffff\1\144\1\60\2\145\1\111\1"+
-        "\123\1\114\1\105\1\151\1\102\1\122\1\154\1\160\1\107\1\157\1\165"+
-        "\1\141\2\145\1\160\1\145\1\166\1\156\1\141\1\165\1\60\1\155\1\166"+
-        "\3\145\1\141\1\145\1\60\1\uffff\2\162\1\116\1\171\2\60\1\143\1\114"+
-        "\1\60\1\145\1\157\1\60\1\163\1\151\1\124\2\162\1\157\1\156\1\151"+
-        "\1\141\1\164\1\151\1\uffff\2\151\1\60\2\155\1\160\1\162\1\uffff"+
-        "\1\146\1\104\1\107\1\163\2\uffff\1\103\1\105\1\uffff\1\143\1\163"+
-        "\1\uffff\1\151\1\162\2\171\1\146\1\104\1\156\1\164\1\144\1\164\1"+
-        "\151\1\162\1\164\1\144\1\uffff\2\142\1\163\1\120\1\141\1\145\1\60"+
-        "\1\164\1\157\1\60\1\164\1\145\1\164\1\145\2\160\1\141\1\171\1\145"+
-        "\1\162\2\145\1\111\1\145\1\165\1\157\1\145\1\151\1\145\2\154\1\165"+
-        "\1\162\1\145\2\143\1\uffff\1\145\1\155\1\uffff\1\151\1\164\1\144"+
-        "\1\157\1\144\2\145\1\143\1\160\1\143\1\157\1\161\2\156\1\171\1\144"+
-        "\1\156\1\162\1\156\1\144\1\156\1\166\1\144\2\171\1\154\1\157\1\161"+
-        "\1\145\1\154\1\155\1\160\1\157\1\145\1\123\1\162\1\104\1\163\1\60"+
-        "\2\145\1\154\1\166\1\165\2\164\1\160\1\104\1\60\1\147\1\145\1\163"+
-        "\1\104\1\60\1\147\1\145\1\104\1\60\1\103\1\141\1\166\1\165\1\60"+
-        "\1\141\1\60\1\157\1\156\1\103\1\164\1\171\1\145\1\60\1\uffff\1\163"+
-        "\1\60\1\141\2\151\1\163\2\145\1\157\1\145\1\uffff\1\101\1\163\1"+
-        "\150\1\157\1\145\1\uffff\1\101\1\104\1\145\1\157\1\uffff\1\157\1"+
-        "\164\2\151\1\uffff\1\162\1\uffff\1\156\1\104\1\141\1\157\1\162\1"+
-        "\60\1\154\1\uffff\1\60\1\uffff\1\162\1\144\1\162\1\60\1\162\1\163"+
-        "\2\154\1\163\1\60\1\151\2\154\1\163\1\141\1\154\2\156\1\145\1\144"+
-        "\1\162\1\141\1\145\1\141\1\164\1\155\1\165\1\157\1\uffff\1\145\1"+
-        "\uffff\1\141\2\145\1\uffff\1\146\1\60\2\145\1\163\1\uffff\1\160"+
-        "\2\145\1\163\1\164\1\145\2\156\1\144\2\145\1\164\1\156\1\164\1\141"+
-        "\1\160\1\143\1\155\1\147\1\164\2\144\1\141\1\uffff\1\60\1\147\1"+
-        "\145\2\60\1\147\1\145\1\141\1\147\4\145\1\103\2\144\1\151\1\164"+
-        "\1\141\1\124\1\157\1\164\1\160\1\141\1\151\2\122\1\143\1\60\1\uffff"+
-        "\1\141\1\155\1\uffff\1\60\1\uffff\1\141\1\155\1\124\1\141\1\170"+
-        "\1\143\1\170\1\143\1\157\2\122\1\157\1\60\1\124\1\171\1\156\1\165"+
-        "\1\157\1\164\3\157\1\145\1\uffff\1\164\1\142\1\uffff\1\164\1\142"+
-        "\1\171\5\164\1\155\2\157\1\156\1\uffff\1\171\1\160\1\145\1\162\1"+
-        "\156\1\151\1\156\2\154\1\163\1\151\1\154\1\151\1\154\1\160\1\151"+
-        "\1\60\1\157\1\60\1\157\1\160\2\154\1\60\1\160\1\145\1\156\2\145"+
-        "\1\157\1\163\2\145\1\60\1\157\1\171\1\157\1\171\1\145\1\157\1\60"+
-        "\1\uffff\1\162\1\uffff\1\162\1\157\2\145\1\uffff\1\145\1\60\1\164"+
-        "\1\101\2\156\3\60\1\uffff\1\156\1\103\1\156\1\103\1\60\1\156\1\uffff"+
-        "\1\163\1\60\1\156\3\60\1\uffff\1\60\1\163\1\164\1\103\3\uffff\1"+
-        "\103\1\157\1\103\1\157\1\uffff\1\103\1\60\1\uffff\1\145\4\uffff"+
-        "\1\163\1\60\2\157\1\156\1\157\1\156\1\157\1\uffff\1\156\1\145\1"+
-        "\uffff\2\156\1\164\1\156\1\164\1\156\1\164\1\155\2\156\1\145\1\156"+
-        "\1\145\1\156\1\60\1\142\2\145\1\170\1\145\1\170\1\145\1\uffff\1"+
-        "\154\2\143\1\164\1\143\1\164\1\143\1\171\2\164\1\60\1\164\1\60\1"+
-        "\164\1\60\2\157\1\uffff\1\157\1\uffff\1\157\1\uffff\4\162\1\60\2"+
-        "\163\1\60\1\uffff\2\60\3\uffff";
+        "\1\0\1\157\1\116\1\124\2\117\1\110\1\117\1\145\2\uffff\1\141\3"+
+        "\uffff\1\151\1\145\1\156\1\162\1\171\1\141\2\163\1\156\1\165\1\101"+
+        "\2\uffff\2\0\1\52\2\uffff\1\151\1\uffff\1\124\1\156\1\122\1\142"+
+        "\1\117\1\124\1\163\1\125\1\101\1\154\1\116\1\160\2\uffff\1\162\1"+
+        "\157\3\uffff\1\147\1\146\1\156\1\151\1\160\1\164\2\163\1\143\1\164"+
+        "\5\uffff\1\144\1\60\2\145\1\111\1\123\1\114\1\105\1\151\1\102\1"+
+        "\122\1\154\1\160\1\107\1\157\1\165\1\145\1\166\1\156\1\141\1\165"+
+        "\1\60\1\145\1\155\1\166\1\145\1\141\2\145\1\141\1\145\1\60\1\uffff"+
+        "\2\162\1\116\1\171\2\60\1\143\1\114\1\60\1\145\1\157\1\60\1\163"+
+        "\1\151\1\156\1\151\1\141\1\164\1\151\1\uffff\1\162\2\151\1\60\1"+
+        "\124\2\155\1\160\1\162\1\uffff\1\146\1\104\1\107\1\163\2\uffff\1"+
+        "\103\1\105\1\uffff\1\143\1\163\1\uffff\1\151\1\162\1\164\1\144\1"+
+        "\164\1\151\1\162\1\104\1\164\1\144\1\uffff\1\171\2\142\1\163\1\120"+
+        "\1\141\1\145\1\60\1\164\1\157\1\60\1\164\1\145\1\164\1\145\1\111"+
+        "\1\145\1\165\1\157\1\145\1\171\1\145\1\162\1\145\1\151\1\145\1\160"+
+        "\2\154\1\165\1\162\1\145\2\143\1\uffff\1\145\1\155\1\uffff\1\151"+
+        "\1\164\1\144\1\157\1\144\1\156\1\171\1\144\1\156\1\162\1\156\1\144"+
+        "\1\156\1\160\1\143\1\157\1\161\1\166\1\144\1\145\2\171\1\154\1\157"+
+        "\1\161\1\145\1\154\1\155\1\160\1\157\1\145\1\123\1\162\1\104\1\164"+
+        "\1\160\1\104\1\147\1\145\1\163\1\104\1\147\1\145\1\154\1\166\1\165"+
+        "\1\145\1\104\2\60\1\103\1\141\1\166\1\165\1\60\1\141\1\60\1\157"+
+        "\1\156\1\103\1\164\1\171\1\157\3\145\1\157\1\145\1\101\1\163\1\150"+
+        "\1\157\1\145\1\101\1\60\1\141\2\151\1\104\1\157\1\145\1\uffff\1"+
+        "\157\1\uffff\1\157\1\164\2\151\1\uffff\1\162\1\uffff\1\156\1\104"+
+        "\1\141\1\157\1\162\1\60\2\154\1\162\1\163\2\154\1\163\1\60\1\151"+
+        "\2\154\1\163\1\uffff\1\162\1\144\1\162\1\141\2\154\2\156\1\145\1"+
+        "\144\1\162\1\141\1\145\1\141\1\164\1\155\1\165\1\157\1\uffff\2\145"+
+        "\1\146\1\60\2\145\1\163\1\uffff\1\160\2\145\1\163\1\141\2\145\1"+
+        "\164\2\145\2\156\1\144\2\145\1\164\1\156\1\164\1\141\1\160\1\143"+
+        "\1\155\1\60\1\147\1\141\1\uffff\1\60\1\147\1\145\2\60\1\147\1\145"+
+        "\1\164\2\144\1\141\1\60\1\147\4\145\1\103\2\144\1\151\1\164\1\141"+
+        "\1\124\1\157\1\164\1\160\1\uffff\1\141\1\143\1\60\1\uffff\1\141"+
+        "\1\155\1\uffff\1\60\1\uffff\1\141\1\155\1\151\2\122\1\124\1\uffff"+
+        "\1\141\1\170\1\143\1\170\1\143\1\157\2\122\1\157\1\60\1\124\1\171"+
+        "\1\156\1\165\1\157\1\164\1\145\1\uffff\1\164\1\142\1\uffff\1\164"+
+        "\1\142\3\157\1\171\5\164\1\155\2\157\1\156\1\uffff\1\171\1\160\1"+
+        "\145\1\162\1\156\1\151\1\163\1\151\1\154\1\151\1\154\1\156\2\154"+
+        "\1\160\1\151\1\60\1\157\1\60\1\157\1\160\2\154\1\60\1\160\1\145"+
+        "\1\156\2\145\1\157\1\60\1\157\1\171\1\157\1\171\1\163\3\145\1\157"+
+        "\1\60\1\uffff\1\162\1\uffff\1\162\1\157\2\145\1\uffff\1\145\1\60"+
+        "\1\164\1\101\2\156\1\uffff\1\156\1\103\1\156\1\103\4\60\1\156\1"+
+        "\uffff\1\163\1\60\1\156\3\60\1\uffff\1\60\1\163\1\164\2\103\1\157"+
+        "\1\103\1\157\4\uffff\1\103\1\60\1\uffff\1\145\4\uffff\1\163\1\60"+
+        "\2\157\1\156\1\157\1\156\1\157\1\uffff\1\156\1\145\1\uffff\2\156"+
+        "\1\164\1\156\1\164\1\156\1\164\1\155\2\156\1\145\1\156\1\145\1\156"+
+        "\1\60\1\142\2\145\1\170\1\145\1\170\1\145\1\uffff\1\154\2\143\1"+
+        "\164\1\143\1\164\1\143\1\171\2\164\1\60\1\164\1\60\1\164\1\60\2"+
+        "\157\1\uffff\1\157\1\uffff\1\157\1\uffff\4\162\1\60\2\163\1\60\1"+
+        "\uffff\2\60\3\uffff";
     static final String DFA12_maxS =
         "\1\uffff\1\157\1\156\1\165\1\141\1\117\1\157\1\117\1\145\2\uffff"+
-        "\1\141\1\uffff\1\156\1\157\1\162\2\uffff\1\151\1\145\1\162\1\171"+
-        "\2\163\1\156\1\165\1\172\2\uffff\2\uffff\1\57\2\uffff\1\151\1\uffff"+
-        "\1\124\1\164\1\122\1\142\1\117\1\124\1\163\1\125\1\101\1\155\1\116"+
-        "\1\161\2\uffff\1\164\1\uffff\1\164\1\155\1\162\1\157\2\uffff\1\147"+
-        "\1\161\1\157\1\160\2\163\1\143\1\164\5\uffff\1\144\1\172\2\145\1"+
-        "\111\1\123\1\114\1\105\1\151\1\102\1\122\1\154\1\160\1\107\1\157"+
-        "\1\165\1\141\2\145\1\160\1\145\1\166\1\156\1\141\1\165\1\172\1\155"+
-        "\1\166\3\145\1\141\1\145\1\172\1\uffff\2\162\1\116\1\171\2\172\1"+
-        "\143\1\114\1\172\1\145\1\157\1\172\1\163\1\151\1\164\2\162\1\157"+
-        "\1\156\1\151\1\141\1\164\1\151\1\uffff\2\151\1\172\2\155\1\160\1"+
-        "\162\1\uffff\1\146\1\104\1\107\1\163\2\uffff\1\103\1\105\1\uffff"+
-        "\1\143\1\163\1\uffff\1\151\1\162\2\171\1\146\1\124\1\156\1\164\1"+
-        "\144\1\164\1\151\1\162\1\164\1\144\1\uffff\2\142\1\163\1\122\1\141"+
-        "\1\145\1\172\1\164\1\157\1\172\1\164\1\151\1\164\1\145\2\160\1\141"+
-        "\1\171\1\145\1\162\2\145\1\124\1\151\1\165\1\157\2\151\1\145\2\154"+
-        "\1\165\1\162\1\145\2\143\1\uffff\1\145\1\155\1\uffff\1\151\1\164"+
-        "\1\144\1\157\1\144\2\145\1\143\1\160\1\143\1\157\1\161\2\156\1\171"+
-        "\1\163\1\156\1\162\1\156\1\163\1\156\1\166\1\144\2\171\1\154\1\157"+
-        "\1\161\1\145\1\154\1\155\1\160\1\157\1\145\1\123\1\162\1\104\1\163"+
-        "\1\172\2\145\1\154\1\166\1\165\2\164\1\160\1\122\1\172\1\147\1\145"+
-        "\1\163\1\122\1\172\1\147\1\145\1\104\1\172\1\103\1\141\1\166\1\165"+
-        "\1\172\1\141\1\172\1\157\1\156\1\104\1\164\1\171\1\145\1\172\1\uffff"+
-        "\1\163\1\172\1\141\2\151\1\163\2\145\1\157\1\145\1\uffff\1\101\1"+
-        "\163\1\150\1\157\1\145\1\uffff\1\101\1\104\1\145\1\157\1\uffff\1"+
-        "\157\1\164\2\151\1\uffff\1\162\1\uffff\1\156\1\104\1\141\1\157\1"+
-        "\162\1\172\1\154\1\uffff\1\172\1\uffff\1\162\1\144\1\162\1\172\1"+
-        "\162\1\163\2\154\1\163\1\172\1\151\2\154\1\163\1\141\1\154\2\156"+
-        "\1\145\1\144\1\162\1\141\1\145\1\141\1\164\1\155\1\165\1\157\1\uffff"+
-        "\1\145\1\uffff\1\141\2\145\1\uffff\1\146\1\172\2\145\1\163\1\uffff"+
-        "\1\160\2\145\1\163\1\164\1\145\2\164\1\144\2\145\1\164\1\156\1\164"+
-        "\1\141\1\160\1\143\1\155\1\147\1\164\2\144\1\141\1\uffff\1\172\1"+
-        "\147\1\145\2\172\1\147\1\145\1\141\1\147\4\145\1\103\2\144\1\151"+
-        "\1\164\1\141\1\124\1\157\1\164\1\160\1\141\1\151\2\122\1\143\1\172"+
-        "\1\uffff\1\141\1\155\1\uffff\1\172\1\uffff\1\141\1\155\1\124\1\141"+
-        "\1\170\1\143\1\170\1\143\1\157\2\122\1\157\1\172\1\124\1\171\1\156"+
-        "\1\165\1\157\1\164\3\157\1\145\1\uffff\1\164\1\142\1\uffff\1\164"+
-        "\1\142\1\171\5\164\1\155\2\157\1\156\1\uffff\1\171\1\160\1\145\1"+
-        "\162\1\156\1\151\1\156\2\154\1\163\1\151\1\154\1\151\1\154\1\160"+
-        "\1\151\1\172\1\157\1\172\1\157\1\160\2\154\1\172\1\160\1\145\1\156"+
-        "\2\145\1\157\1\163\2\145\1\172\1\157\1\171\1\157\1\171\1\145\1\157"+
-        "\1\172\1\uffff\1\162\1\uffff\1\162\1\157\2\145\1\uffff\1\145\1\172"+
-        "\1\164\1\101\2\156\3\172\1\uffff\1\156\1\103\1\156\1\103\1\172\1"+
-        "\156\1\uffff\1\163\1\172\1\156\3\172\1\uffff\1\172\1\163\1\164\1"+
-        "\103\3\uffff\1\103\1\157\1\103\1\157\1\uffff\1\103\1\172\1\uffff"+
+        "\1\162\3\uffff\1\151\1\145\1\156\1\162\1\171\1\141\2\163\1\156\1"+
+        "\165\1\172\2\uffff\2\uffff\1\57\2\uffff\1\151\1\uffff\1\124\1\164"+
+        "\1\122\1\142\1\117\1\124\1\163\1\125\1\101\1\155\1\116\1\161\2\uffff"+
+        "\1\162\1\157\3\uffff\1\147\1\161\1\156\1\157\1\160\1\164\2\163\1"+
+        "\143\1\164\5\uffff\1\144\1\172\2\145\1\111\1\123\1\114\1\105\1\151"+
+        "\1\102\1\122\1\154\1\160\1\107\1\157\1\165\1\145\1\166\1\156\1\141"+
+        "\1\165\1\172\1\145\1\155\1\166\1\145\1\141\2\145\1\141\1\145\1\172"+
+        "\1\uffff\2\162\1\116\1\171\2\172\1\143\1\114\1\172\1\145\1\157\1"+
+        "\172\1\163\1\151\1\156\1\151\1\141\1\164\1\151\1\uffff\1\162\2\151"+
+        "\1\172\1\124\2\155\1\160\1\162\1\uffff\1\146\1\104\1\107\1\163\2"+
+        "\uffff\1\103\1\105\1\uffff\1\143\1\163\1\uffff\1\151\1\162\1\164"+
+        "\1\144\1\164\1\151\1\162\1\124\1\164\1\144\1\uffff\1\171\2\142\1"+
+        "\163\1\122\1\141\1\145\1\172\1\164\1\157\1\172\1\164\1\151\1\164"+
+        "\1\145\1\124\1\151\1\165\1\157\1\151\1\171\1\145\1\162\1\145\1\151"+
+        "\1\145\1\160\2\154\1\165\1\162\1\145\2\143\1\uffff\1\145\1\155\1"+
+        "\uffff\1\151\1\164\1\144\1\157\1\144\1\156\1\171\1\144\1\156\1\162"+
+        "\1\156\1\144\1\156\1\160\1\143\1\157\1\161\1\166\1\144\1\145\2\171"+
+        "\1\154\1\157\1\161\1\145\1\154\1\155\1\160\1\157\1\145\1\123\1\162"+
+        "\1\122\1\164\1\160\1\122\1\147\1\145\1\163\1\122\1\147\1\145\1\154"+
+        "\1\166\1\165\1\145\1\122\2\172\1\103\1\141\1\166\1\165\1\172\1\141"+
+        "\1\172\1\157\1\156\1\104\1\164\1\171\1\157\3\145\1\157\1\145\1\101"+
+        "\1\163\1\150\1\157\1\145\1\101\1\172\1\141\2\151\1\104\1\157\1\145"+
+        "\1\uffff\1\157\1\uffff\1\157\1\164\2\151\1\uffff\1\162\1\uffff\1"+
+        "\156\1\104\1\141\1\157\1\162\1\172\2\154\1\162\1\163\2\154\1\163"+
+        "\1\172\1\151\2\154\1\163\1\uffff\1\162\1\144\1\162\1\141\2\154\2"+
+        "\156\1\145\1\144\1\162\1\141\1\145\1\141\1\164\1\155\1\165\1\157"+
+        "\1\uffff\2\145\1\146\1\172\2\145\1\163\1\uffff\1\160\2\145\1\163"+
+        "\1\141\2\145\1\164\2\145\2\164\1\144\2\145\1\164\1\156\1\164\1\141"+
+        "\1\160\1\143\1\155\1\172\1\147\1\141\1\uffff\1\172\1\147\1\145\2"+
+        "\172\1\147\1\145\1\164\2\144\1\141\1\172\1\147\4\145\1\103\2\144"+
+        "\1\151\1\164\1\141\1\124\1\157\1\164\1\160\1\uffff\1\141\1\143\1"+
+        "\172\1\uffff\1\141\1\155\1\uffff\1\172\1\uffff\1\141\1\155\1\151"+
+        "\2\122\1\124\1\uffff\1\141\1\170\1\143\1\170\1\143\1\157\2\122\1"+
+        "\157\1\172\1\124\1\171\1\156\1\165\1\157\1\164\1\145\1\uffff\1\164"+
+        "\1\142\1\uffff\1\164\1\142\3\157\1\171\5\164\1\155\2\157\1\156\1"+
+        "\uffff\1\171\1\160\1\145\1\162\1\156\1\151\1\163\1\151\1\154\1\151"+
+        "\1\154\1\156\2\154\1\160\1\151\1\172\1\157\1\172\1\157\1\160\2\154"+
+        "\1\172\1\160\1\145\1\156\2\145\1\157\1\172\1\157\1\171\1\157\1\171"+
+        "\1\163\3\145\1\157\1\172\1\uffff\1\162\1\uffff\1\162\1\157\2\145"+
+        "\1\uffff\1\145\1\172\1\164\1\101\2\156\1\uffff\1\156\1\103\1\156"+
+        "\1\103\4\172\1\156\1\uffff\1\163\1\172\1\156\3\172\1\uffff\1\172"+
+        "\1\163\1\164\2\103\1\157\1\103\1\157\4\uffff\1\103\1\172\1\uffff"+
         "\1\145\4\uffff\1\163\1\172\2\157\1\156\1\157\1\156\1\157\1\uffff"+
         "\1\156\1\145\1\uffff\2\156\1\164\1\156\1\164\1\156\1\164\1\155\2"+
         "\156\1\145\1\156\1\145\1\156\1\172\1\142\2\145\1\170\1\145\1\170"+
@@ -2444,99 +2352,100 @@ public class InternalMyDslTestLexer extends Lexer {
         "\172\1\164\1\172\1\164\1\172\2\157\1\uffff\1\157\1\uffff\1\157\1"+
         "\uffff\4\162\1\172\2\163\1\172\1\uffff\2\172\3\uffff";
     static final String DFA12_acceptS =
-        "\11\uffff\1\12\1\13\1\uffff\1\15\3\uffff\1\22\1\23\11\uffff\1\74"+
-        "\1\75\3\uffff\1\101\1\102\1\uffff\1\74\14\uffff\1\12\1\13\1\uffff"+
-        "\1\15\4\uffff\1\22\1\23\10\uffff\1\75\1\76\1\77\1\100\1\101\42\uffff"+
-        "\1\2\27\uffff\1\40\7\uffff\1\1\4\uffff\1\4\1\7\2\uffff\1\6\2\uffff"+
-        "\1\10\16\uffff\1\37\44\uffff\1\3\2\uffff\1\5\110\uffff\1\42\12\uffff"+
-        "\1\43\5\uffff\1\44\4\uffff\1\47\4\uffff\1\20\1\uffff\1\50\7\uffff"+
-        "\1\14\1\uffff\1\32\34\uffff\1\11\1\uffff\1\16\3\uffff\1\17\5\uffff"+
-        "\1\24\27\uffff\1\34\35\uffff\1\62\2\uffff\1\26\1\uffff\1\61\27\uffff"+
-        "\1\27\2\uffff\1\30\14\uffff\1\45\51\uffff\1\66\1\uffff\1\56\4\uffff"+
-        "\1\41\11\uffff\1\21\6\uffff\1\52\6\uffff\1\33\4\uffff\1\35\1\67"+
-        "\1\72\4\uffff\1\36\2\uffff\1\60\1\uffff\1\70\1\73\1\31\1\46\10\uffff"+
-        "\1\53\2\uffff\1\25\26\uffff\1\57\21\uffff\1\63\1\uffff\1\64\1\uffff"+
-        "\1\51\10\uffff\1\71\2\uffff\1\65\1\54\1\55";
+        "\11\uffff\1\12\1\13\1\uffff\1\16\1\17\1\20\13\uffff\1\71\1\72\3"+
+        "\uffff\1\76\1\77\1\uffff\1\71\14\uffff\1\12\1\13\2\uffff\1\16\1"+
+        "\17\1\20\12\uffff\1\72\1\73\1\74\1\75\1\76\40\uffff\1\2\23\uffff"+
+        "\1\35\11\uffff\1\1\4\uffff\1\4\1\7\2\uffff\1\6\2\uffff\1\10\12\uffff"+
+        "\1\34\42\uffff\1\3\2\uffff\1\5\121\uffff\1\37\1\uffff\1\44\4\uffff"+
+        "\1\14\1\uffff\1\45\22\uffff\1\27\22\uffff\1\11\7\uffff\1\21\31\uffff"+
+        "\1\31\33\uffff\1\41\3\uffff\1\57\2\uffff\1\23\1\uffff\1\56\6\uffff"+
+        "\1\40\21\uffff\1\24\2\uffff\1\25\17\uffff\1\42\51\uffff\1\63\1\uffff"+
+        "\1\53\4\uffff\1\36\6\uffff\1\15\11\uffff\1\47\6\uffff\1\30\10\uffff"+
+        "\1\32\1\64\1\67\1\33\2\uffff\1\55\1\uffff\1\65\1\70\1\26\1\43\10"+
+        "\uffff\1\50\2\uffff\1\22\26\uffff\1\54\21\uffff\1\60\1\uffff\1\61"+
+        "\1\uffff\1\46\10\uffff\1\66\2\uffff\1\62\1\51\1\52";
     static final String DFA12_specialS =
-        "\1\2\34\uffff\1\1\1\0\u024e\uffff}>";
+        "\1\1\33\uffff\1\0\1\2\u023b\uffff}>";
     static final String[] DFA12_transitionS = {
-            "\11\41\2\40\2\41\1\40\22\41\1\40\1\41\1\35\4\41\1\36\1\20\1"+
-            "\21\2\41\1\14\2\41\1\37\12\34\7\41\1\27\1\4\1\6\1\5\4\33\1\2"+
-            "\2\33\1\7\3\33\1\24\1\33\1\10\1\3\7\33\3\41\1\32\1\33\1\41\1"+
-            "\26\1\33\1\16\1\13\1\30\3\33\1\15\5\33\1\31\1\17\1\33\1\23\1"+
-            "\22\1\25\1\33\1\1\4\33\1\11\1\41\1\12\uff82\41",
-            "\1\42",
-            "\1\44\37\uffff\1\45",
-            "\1\46\40\uffff\1\47",
-            "\1\50\11\uffff\1\51\7\uffff\1\52",
-            "\1\53",
-            "\1\54\46\uffff\1\55",
+            "\11\40\2\37\2\40\1\37\22\40\1\37\1\40\1\34\4\40\1\35\1\14\1"+
+            "\15\2\40\1\16\2\40\1\36\12\33\7\40\1\26\1\4\1\6\1\5\4\32\1\2"+
+            "\2\32\1\7\3\32\1\22\1\32\1\10\1\3\7\32\3\40\1\31\1\32\1\40\1"+
+            "\25\2\32\1\24\1\27\3\32\1\21\5\32\1\30\1\13\1\32\1\20\1\17\1"+
+            "\23\1\32\1\1\4\32\1\11\1\40\1\12\uff82\40",
+            "\1\41",
+            "\1\43\37\uffff\1\44",
+            "\1\45\40\uffff\1\46",
+            "\1\47\11\uffff\1\50\7\uffff\1\51",
+            "\1\52",
+            "\1\53\46\uffff\1\54",
+            "\1\55",
             "\1\56",
-            "\1\57",
             "",
             "",
-            "\1\62",
+            "\1\61\20\uffff\1\62",
             "",
-            "\1\64",
-            "\1\65",
-            "\1\66\20\uffff\1\67",
             "",
             "",
+            "\1\66",
+            "\1\67",
+            "\1\70",
+            "\1\71",
             "\1\72",
             "\1\73",
             "\1\74",
             "\1\75",
             "\1\76",
             "\1\77",
-            "\1\100",
-            "\1\101",
-            "\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\32\42\4\uffff\1\42\1\uffff\32\42",
             "",
             "",
-            "\0\103",
-            "\0\103",
-            "\1\104\4\uffff\1\105",
+            "\0\101",
+            "\0\101",
+            "\1\102\4\uffff\1\103",
             "",
             "",
-            "\1\107",
+            "\1\105",
             "",
-            "\1\110",
-            "\1\112\5\uffff\1\111",
+            "\1\106",
+            "\1\110\5\uffff\1\107",
+            "\1\111",
+            "\1\112",
             "\1\113",
             "\1\114",
             "\1\115",
             "\1\116",
             "\1\117",
-            "\1\120",
-            "\1\121",
-            "\1\122\1\123",
-            "\1\124",
-            "\1\125\1\126",
+            "\1\120\1\121",
+            "\1\122",
+            "\1\123\1\124",
             "",
             "",
-            "\1\127",
+            "\1\125",
+            "\1\126",
             "",
-            "\1\131\5\uffff\1\130",
-            "\1\132",
-            "\1\133",
-            "\1\134",
             "",
             "",
-            "\1\135",
-            "\1\140\5\uffff\1\136\4\uffff\1\137",
-            "\1\141\5\uffff\1\142",
+            "\1\127",
+            "\1\132\5\uffff\1\130\4\uffff\1\131",
+            "\1\133",
+            "\1\134\5\uffff\1\135",
+            "\1\136",
+            "\1\137",
+            "\1\140",
+            "\1\141",
+            "\1\142",
             "\1\143",
-            "\1\144",
-            "\1\145",
-            "\1\146",
-            "\1\147",
             "",
             "",
             "",
             "",
             "",
+            "\1\144",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\1\146",
+            "\1\147",
             "\1\150",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\151",
             "\1\152",
             "\1\153",
             "\1\154",
@@ -2552,7 +2461,7 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\166",
             "\1\167",
             "\1\170",
-            "\1\171",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\172",
             "\1\173",
             "\1\174",
@@ -2560,87 +2469,85 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\176",
             "\1\177",
             "\1\u0080",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0081",
             "\1\u0082",
-            "\1\u0083",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
             "\1\u0084",
             "\1\u0085",
             "\1\u0086",
             "\1\u0087",
-            "\1\u0088",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u008a",
             "\1\u008b",
-            "\1\u008c",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u008d",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u008e",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0090",
             "\1\u0091",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0092",
             "\1\u0093",
             "\1\u0094",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0095",
             "\1\u0096",
+            "",
             "\1\u0097",
-            "\1\u0099\37\uffff\1\u0098",
-            "\1\u009a",
+            "\1\u0098",
+            "\1\u0099",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u009b",
             "\1\u009c",
             "\1\u009d",
             "\1\u009e",
             "\1\u009f",
+            "",
             "\1\u00a0",
             "\1\u00a1",
-            "",
             "\1\u00a2",
             "\1\u00a3",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "",
+            "",
+            "\1\u00a4",
             "\1\u00a5",
+            "",
             "\1\u00a6",
             "\1\u00a7",
-            "\1\u00a8",
             "",
+            "\1\u00a8",
             "\1\u00a9",
             "\1\u00aa",
             "\1\u00ab",
             "\1\u00ac",
-            "",
-            "",
             "\1\u00ad",
             "\1\u00ae",
-            "",
-            "\1\u00af",
-            "\1\u00b0",
-            "",
-            "\1\u00b1",
-            "\1\u00b2",
+            "\1\u00b0\13\uffff\1\u00b1\1\uffff\1\u00b2\1\uffff\1\u00af",
             "\1\u00b3",
             "\1\u00b4",
+            "",
             "\1\u00b5",
-            "\1\u00b7\13\uffff\1\u00b8\1\uffff\1\u00b9\1\uffff\1\u00b6",
-            "\1\u00ba",
+            "\1\u00b6",
+            "\1\u00b7",
+            "\1\u00b8",
+            "\1\u00b9\1\uffff\1\u00ba",
             "\1\u00bb",
             "\1\u00bc",
-            "\1\u00bd",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u00be",
             "\1\u00bf",
-            "\1\u00c0",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u00c1",
-            "",
-            "\1\u00c2",
-            "\1\u00c3",
+            "\1\u00c3\3\uffff\1\u00c2",
             "\1\u00c4",
-            "\1\u00c5\1\uffff\1\u00c6",
-            "\1\u00c7",
-            "\1\u00c8",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u00c5",
+            "\1\u00c6\12\uffff\1\u00c7",
+            "\1\u00c8\3\uffff\1\u00c9",
             "\1\u00ca",
             "\1\u00cb",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u00cd",
-            "\1\u00cf\3\uffff\1\u00ce",
+            "\1\u00cc\3\uffff\1\u00cd",
+            "\1\u00ce",
+            "\1\u00cf",
             "\1\u00d0",
             "\1\u00d1",
             "\1\u00d2",
@@ -2651,11 +2558,16 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u00d7",
             "\1\u00d8",
             "\1\u00d9",
-            "\1\u00da\12\uffff\1\u00db",
-            "\1\u00dc\3\uffff\1\u00dd",
+            "\1\u00da",
+            "\1\u00db",
+            "",
+            "\1\u00dc",
+            "\1\u00dd",
+            "",
             "\1\u00de",
             "\1\u00df",
-            "\1\u00e0\3\uffff\1\u00e1",
+            "\1\u00e0",
+            "\1\u00e1",
             "\1\u00e2",
             "\1\u00e3",
             "\1\u00e4",
@@ -2665,10 +2577,8 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u00e8",
             "\1\u00e9",
             "\1\u00ea",
-            "",
             "\1\u00eb",
             "\1\u00ec",
-            "",
             "\1\u00ed",
             "\1\u00ee",
             "\1\u00ef",
@@ -2684,82 +2594,83 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u00f9",
             "\1\u00fa",
             "\1\u00fb",
-            "\1\u00fc\16\uffff\1\u00fd",
+            "\1\u00fc",
+            "\1\u00fd",
             "\1\u00fe",
-            "\1\u00ff",
-            "\1\u0100",
-            "\1\u0101\16\uffff\1\u0102",
-            "\1\u0103",
-            "\1\u0104",
+            "\1\u0100\15\uffff\1\u00ff",
+            "\1\u0101",
+            "\1\u0102",
+            "\1\u0104\15\uffff\1\u0103",
             "\1\u0105",
             "\1\u0106",
             "\1\u0107",
-            "\1\u0108",
-            "\1\u0109",
+            "\1\u0109\15\uffff\1\u0108",
             "\1\u010a",
             "\1\u010b",
             "\1\u010c",
             "\1\u010d",
             "\1\u010e",
             "\1\u010f",
-            "\1\u0110",
-            "\1\u0111",
-            "\1\u0112",
-            "\1\u0113",
-            "\1\u0114",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0111\15\uffff\1\u0110",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\2\42\1\u0113\27\42\4\uffff\1\42\1\uffff\32"+
+            "\42",
+            "\1\u0115",
             "\1\u0116",
             "\1\u0117",
             "\1\u0118",
-            "\1\u0119",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u011a",
-            "\1\u011b",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u011c",
             "\1\u011d",
-            "\1\u011f\15\uffff\1\u011e",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u011f\1\u011e",
+            "\1\u0120",
             "\1\u0121",
             "\1\u0122",
             "\1\u0123",
-            "\1\u0125\15\uffff\1\u0124",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0124",
+            "\1\u0125",
+            "\1\u0126",
             "\1\u0127",
             "\1\u0128",
             "\1\u0129",
-            "\12\43\7\uffff\2\43\1\u012a\27\43\4\uffff\1\43\1\uffff\32"+
-            "\43",
+            "\1\u012a",
+            "\1\u012b",
             "\1\u012c",
             "\1\u012d",
-            "\1\u012e",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u012f",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0130",
             "\1\u0131",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0132",
             "\1\u0133",
             "\1\u0134",
-            "\1\u0136\1\u0135",
+            "",
+            "\1\u0135",
+            "",
+            "\1\u0136",
             "\1\u0137",
             "\1\u0138",
             "\1\u0139",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "",
+            "\1\u013a",
             "",
             "\1\u013b",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u013c",
             "\1\u013d",
             "\1\u013e",
             "\1\u013f",
-            "\1\u0140",
-            "\1\u0141",
+            "\12\42\7\uffff\2\42\1\u0140\27\42\4\uffff\1\42\1\uffff\32"+
+            "\42",
             "\1\u0142",
             "\1\u0143",
             "\1\u0144",
-            "",
             "\1\u0145",
             "\1\u0146",
             "\1\u0147",
             "\1\u0148",
-            "\1\u0149",
-            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u014a",
             "\1\u014b",
             "\1\u014c",
@@ -2769,31 +2680,29 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u014f",
             "\1\u0150",
             "\1\u0151",
-            "",
             "\1\u0152",
-            "",
             "\1\u0153",
             "\1\u0154",
             "\1\u0155",
             "\1\u0156",
             "\1\u0157",
-            "\12\43\7\uffff\2\43\1\u0158\27\43\4\uffff\1\43\1\uffff\32"+
-            "\43",
+            "\1\u0158",
+            "\1\u0159",
             "\1\u015a",
-            "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "",
+            "\1\u015b",
             "\1\u015c",
             "\1\u015d",
             "\1\u015e",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u015f",
+            "",
             "\1\u0160",
             "\1\u0161",
             "\1\u0162",
-            "\1\u0163",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0164",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0165",
             "\1\u0166",
+            "",
             "\1\u0167",
             "\1\u0168",
             "\1\u0169",
@@ -2804,39 +2713,36 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u016e",
             "\1\u016f",
             "\1\u0170",
-            "\1\u0171",
-            "\1\u0172",
-            "\1\u0173",
-            "\1\u0174",
+            "\1\u0172\5\uffff\1\u0171",
+            "\1\u0174\5\uffff\1\u0173",
             "\1\u0175",
             "\1\u0176",
             "\1\u0177",
-            "",
             "\1\u0178",
-            "",
             "\1\u0179",
             "\1\u017a",
             "\1\u017b",
-            "",
             "\1\u017c",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u017d",
             "\1\u017e",
-            "\1\u017f",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0180",
-            "",
             "\1\u0181",
-            "\1\u0182",
-            "\1\u0183",
+            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\22\42\1\u0182\7"+
+            "\42",
             "\1\u0184",
             "\1\u0185",
-            "\1\u0186",
-            "\1\u0188\5\uffff\1\u0187",
-            "\1\u018a\5\uffff\1\u0189",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\22\42\1\u0187\7"+
+            "\42",
+            "\1\u0189",
+            "\1\u018a",
             "\1\u018b",
             "\1\u018c",
             "\1\u018d",
             "\1\u018e",
-            "\1\u018f",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0190",
             "\1\u0191",
             "\1\u0192",
@@ -2847,24 +2753,28 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u0197",
             "\1\u0198",
             "\1\u0199",
-            "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\22\43\1\u019a\7"+
-            "\43",
+            "\1\u019a",
+            "\1\u019b",
             "\1\u019c",
             "\1\u019d",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\22\43\1\u019f\7"+
-            "\43",
-            "\1\u01a1",
+            "\1\u019e",
+            "",
+            "\1\u019f",
+            "\1\u01a0",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
             "\1\u01a2",
             "\1\u01a3",
-            "\1\u01a4",
+            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
             "\1\u01a5",
             "\1\u01a6",
             "\1\u01a7",
             "\1\u01a8",
             "\1\u01a9",
             "\1\u01aa",
+            "",
             "\1\u01ab",
             "\1\u01ac",
             "\1\u01ad",
@@ -2874,19 +2784,18 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u01b1",
             "\1\u01b2",
             "\1\u01b3",
-            "\1\u01b4",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u01b5",
             "\1\u01b6",
             "\1\u01b7",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "",
+            "\1\u01b8",
             "\1\u01b9",
             "\1\u01ba",
-            "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u01bb",
             "",
             "\1\u01bc",
             "\1\u01bd",
+            "",
             "\1\u01be",
             "\1\u01bf",
             "\1\u01c0",
@@ -2897,21 +2806,20 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u01c5",
             "\1\u01c6",
             "\1\u01c7",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u01c8",
             "\1\u01c9",
             "\1\u01ca",
             "\1\u01cb",
             "\1\u01cc",
+            "",
             "\1\u01cd",
             "\1\u01ce",
             "\1\u01cf",
             "\1\u01d0",
             "\1\u01d1",
             "\1\u01d2",
-            "",
             "\1\u01d3",
             "\1\u01d4",
-            "",
             "\1\u01d5",
             "\1\u01d6",
             "\1\u01d7",
@@ -2920,119 +2828,119 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u01da",
             "\1\u01db",
             "\1\u01dc",
-            "\1\u01dd",
-            "\1\u01de",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\22\42\1\u01dd\7"+
+            "\42",
             "\1\u01df",
-            "\1\u01e0",
-            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u01e1",
             "\1\u01e2",
             "\1\u01e3",
             "\1\u01e4",
-            "\1\u01e5",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u01e6",
             "\1\u01e7",
             "\1\u01e8",
             "\1\u01e9",
             "\1\u01ea",
             "\1\u01eb",
-            "\1\u01ec",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u01ed",
             "\1\u01ee",
             "\1\u01ef",
             "\1\u01f0",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\22\43\1\u01f1\7"+
-            "\43",
+            "\1\u01f1",
+            "\1\u01f2",
             "\1\u01f3",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u01f4",
             "\1\u01f5",
-            "\1\u01f6",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
             "\1\u01f7",
+            "",
             "\1\u01f8",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u01f9",
             "\1\u01fa",
             "\1\u01fb",
+            "",
             "\1\u01fc",
-            "\1\u01fd",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u01fe",
             "\1\u01ff",
             "\1\u0200",
             "\1\u0201",
+            "",
             "\1\u0202",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0203",
             "\1\u0204",
             "\1\u0205",
-            "\1\u0206",
-            "\1\u0207",
-            "\1\u0208",
-            "\1\u0209",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\1\u020a",
             "",
             "\1\u020b",
-            "",
-            "\1\u020c",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u020d",
-            "\1\u020e",
-            "\1\u020f",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "",
-            "\1\u0210",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0212",
             "\1\u0213",
             "\1\u0214",
             "\1\u0215",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0216",
+            "\1\u0217",
+            "\1\u0218",
+            "",
+            "",
+            "",
             "",
             "\1\u0219",
-            "\1\u021a",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
             "\1\u021b",
+            "",
+            "",
+            "",
+            "",
             "\1\u021c",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u021e",
-            "",
             "\1\u021f",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0220",
             "\1\u0221",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0222",
+            "\1\u0223",
+            "",
+            "\1\u0224",
+            "\1\u0225",
             "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
             "\1\u0226",
             "\1\u0227",
             "\1\u0228",
-            "",
-            "",
-            "",
             "\1\u0229",
             "\1\u022a",
             "\1\u022b",
             "\1\u022c",
-            "",
             "\1\u022d",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "",
+            "\1\u022e",
             "\1\u022f",
-            "",
-            "",
-            "",
-            "",
             "\1\u0230",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0231",
             "\1\u0232",
             "\1\u0233",
-            "\1\u0234",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0235",
             "\1\u0236",
             "\1\u0237",
-            "",
             "\1\u0238",
             "\1\u0239",
-            "",
             "\1\u023a",
             "\1\u023b",
+            "",
             "\1\u023c",
             "\1\u023d",
             "\1\u023e",
@@ -3043,50 +2951,29 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u0243",
             "\1\u0244",
             "\1\u0245",
-            "\1\u0246",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0247",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0249",
-            "\1\u024a",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u024b",
             "\1\u024c",
+            "",
             "\1\u024d",
+            "",
             "\1\u024e",
-            "\1\u024f",
             "",
+            "\1\u024f",
             "\1\u0250",
             "\1\u0251",
             "\1\u0252",
-            "\1\u0253",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0254",
             "\1\u0255",
-            "\1\u0256",
-            "\1\u0257",
-            "\1\u0258",
-            "\1\u0259",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u025b",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u025d",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u025f",
-            "\1\u0260",
-            "",
-            "\1\u0261",
-            "",
-            "\1\u0262",
-            "",
-            "\1\u0263",
-            "\1\u0264",
-            "\1\u0265",
-            "\1\u0266",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u0268",
-            "\1\u0269",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "",
             "",
             ""
@@ -3122,33 +3009,23 @@ public class InternalMyDslTestLexer extends Lexer {
             this.transition = DFA12_transition;
         }
         public String getDescription() {
-            return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | T__67 | T__68 | T__69 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
+            return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
                     case 0 : 
-                        int LA12_30 = input.LA(1);
+                        int LA12_28 = input.LA(1);
 
                         s = -1;
-                        if ( ((LA12_30>='\u0000' && LA12_30<='\uFFFF')) ) {s = 67;}
+                        if ( ((LA12_28>='\u0000' && LA12_28<='\uFFFF')) ) {s = 65;}
 
-                        else s = 33;
+                        else s = 32;
 
                         if ( s>=0 ) return s;
                         break;
                     case 1 : 
-                        int LA12_29 = input.LA(1);
-
-                        s = -1;
-                        if ( ((LA12_29>='\u0000' && LA12_29<='\uFFFF')) ) {s = 67;}
-
-                        else s = 33;
-
-                        if ( s>=0 ) return s;
-                        break;
-                    case 2 : 
                         int LA12_0 = input.LA(1);
 
                         s = -1;
@@ -3172,51 +3049,59 @@ public class InternalMyDslTestLexer extends Lexer {
 
                         else if ( (LA12_0=='}') ) {s = 10;}
 
-                        else if ( (LA12_0=='d') ) {s = 11;}
+                        else if ( (LA12_0=='p') ) {s = 11;}
+
+                        else if ( (LA12_0=='(') ) {s = 12;}
 
-                        else if ( (LA12_0==',') ) {s = 12;}
+                        else if ( (LA12_0==')') ) {s = 13;}
 
-                        else if ( (LA12_0=='i') ) {s = 13;}
+                        else if ( (LA12_0==',') ) {s = 14;}
 
-                        else if ( (LA12_0=='c') ) {s = 14;}
+                        else if ( (LA12_0=='s') ) {s = 15;}
 
-                        else if ( (LA12_0=='p') ) {s = 15;}
+                        else if ( (LA12_0=='r') ) {s = 16;}
 
-                        else if ( (LA12_0=='(') ) {s = 16;}
+                        else if ( (LA12_0=='i') ) {s = 17;}
 
-                        else if ( (LA12_0==')') ) {s = 17;}
+                        else if ( (LA12_0=='P') ) {s = 18;}
 
-                        else if ( (LA12_0=='s') ) {s = 18;}
+                        else if ( (LA12_0=='t') ) {s = 19;}
 
-                        else if ( (LA12_0=='r') ) {s = 19;}
+                        else if ( (LA12_0=='d') ) {s = 20;}
 
-                        else if ( (LA12_0=='P') ) {s = 20;}
+                        else if ( (LA12_0=='a') ) {s = 21;}
 
-                        else if ( (LA12_0=='t') ) {s = 21;}
+                        else if ( (LA12_0=='A') ) {s = 22;}
 
-                        else if ( (LA12_0=='a') ) {s = 22;}
+                        else if ( (LA12_0=='e') ) {s = 23;}
 
-                        else if ( (LA12_0=='A') ) {s = 23;}
+                        else if ( (LA12_0=='o') ) {s = 24;}
 
-                        else if ( (LA12_0=='e') ) {s = 24;}
+                        else if ( (LA12_0=='^') ) {s = 25;}
 
-                        else if ( (LA12_0=='o') ) {s = 25;}
+                        else if ( ((LA12_0>='E' && LA12_0<='H')||(LA12_0>='J' && LA12_0<='K')||(LA12_0>='M' && LA12_0<='O')||LA12_0=='Q'||(LA12_0>='T' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='b' && LA12_0<='c')||(LA12_0>='f' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='n')||LA12_0=='q'||LA12_0=='u'||(LA12_0>='w' && LA12_0<='z')) ) {s = 26;}
 
-                        else if ( (LA12_0=='^') ) {s = 26;}
+                        else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 27;}
 
-                        else if ( ((LA12_0>='E' && LA12_0<='H')||(LA12_0>='J' && LA12_0<='K')||(LA12_0>='M' && LA12_0<='O')||LA12_0=='Q'||(LA12_0>='T' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||(LA12_0>='f' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='n')||LA12_0=='q'||LA12_0=='u'||(LA12_0>='w' && LA12_0<='z')) ) {s = 27;}
+                        else if ( (LA12_0=='\"') ) {s = 28;}
 
-                        else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 28;}
+                        else if ( (LA12_0=='\'') ) {s = 29;}
 
-                        else if ( (LA12_0=='\"') ) {s = 29;}
+                        else if ( (LA12_0=='/') ) {s = 30;}
 
-                        else if ( (LA12_0=='\'') ) {s = 30;}
+                        else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 31;}
 
-                        else if ( (LA12_0=='/') ) {s = 31;}
+                        else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='*' && LA12_0<='+')||(LA12_0>='-' && LA12_0<='.')||(LA12_0>=':' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 32;}
+
+                        if ( s>=0 ) return s;
+                        break;
+                    case 2 : 
+                        int LA12_29 = input.LA(1);
 
-                        else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 32;}
+                        s = -1;
+                        if ( ((LA12_29>='\u0000' && LA12_29<='\uFFFF')) ) {s = 65;}
 
-                        else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='*' && LA12_0<='+')||(LA12_0>='-' && LA12_0<='.')||(LA12_0>=':' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 33;}
+                        else s = 32;
 
                         if ( s>=0 ) return s;
                         break;
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestParser.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestParser.java
index 0edc4a96c232c8393720d6ea9365650f55a147bb..24b7560790a04cb157c759041f309f7c6cea65c8 100644
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestParser.java
+++ b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTestParser.java
@@ -22,13 +22,10 @@ import java.util.ArrayList;
 @SuppressWarnings("all")
 public class InternalMyDslTestParser extends AbstractInternalContentAssistParser {
     public static final String[] tokenNames = new String[] {
-        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'void'", "'INT'", "'STRING'", "'BOOL'", "'DOUBLE'", "'CHAR'", "'BYTE'", "'LONG'", "'Repository'", "'{'", "'}'", "'datatypes'", "','", "'interfaces'", "'components'", "'Interface'", "'parentInterfaces'", "'('", "')'", "'signatures'", "'RepositoryComponent'", "'relationship'", "'providedRoles'", "'requiredRoles'", "'CollectionDataType'", "'innerType'", "'CompositeDataType'", "'parentTypes'", "'innerDeclarations'", "'PrimitiveDataType'", "'type'", "'ref'", "'InnerDeclaration'", "'dataType'", "'provides'", "'requires'", "'BasicComponent'", "'CompositeComponent'", "'assembly'", "'SubSystem'", "'ComposedStructureAssembly'", "'assemblyContexts'", "'assemblyConnectors'", "'providedDelegationConnectors'", "'requiredDelegationConnectors'", "'AssemblyContext'", "'encapsulatedComponent'", "'AssemblyConnector'", "'requiredRole'", "'providedRole'", "'providingAssemblyContext'", "'requiringAssemblyContext'", "'ProvidedDelegationConnector'", "'assemblyContext'", "'innerProvidedRole'", "'outerProvidedRole'", "'RequiredDelegationConnector'", "'innerRequiredRole'", "'outerRequiredRole'"
+        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'void'", "'INT'", "'STRING'", "'BOOL'", "'DOUBLE'", "'CHAR'", "'BYTE'", "'LONG'", "'Repository'", "'{'", "'}'", "'Interface'", "'parentInterfaces'", "'('", "')'", "','", "'signatures'", "'RepositoryComponent'", "'relationship'", "'providedRoles'", "'requiredRoles'", "'CollectionDataType'", "'innerType'", "'CompositeDataType'", "'parentTypes'", "'innerDeclarations'", "'PrimitiveDataType'", "'type'", "'ref'", "'InnerDeclaration'", "'dataType'", "'ProvidedRole'", "'RequiredRole'", "'BasicComponent'", "'CompositeComponent'", "'assembly'", "'SubSystem'", "'ComposedStructureAssembly'", "'assemblyContexts'", "'assemblyConnectors'", "'providedDelegationConnectors'", "'requiredDelegationConnectors'", "'AssemblyContext'", "'encapsulatedComponent'", "'AssemblyConnector'", "'requiredRole'", "'providedRole'", "'providingAssemblyContext'", "'requiringAssemblyContext'", "'ProvidedDelegationConnector'", "'assemblyContext'", "'innerProvidedRole'", "'outerProvidedRole'", "'RequiredDelegationConnector'", "'innerRequiredRole'", "'outerRequiredRole'"
     };
-    public static final int T__68=68;
-    public static final int T__69=69;
     public static final int RULE_ID=5;
     public static final int T__66=66;
-    public static final int T__67=67;
     public static final int T__64=64;
     public static final int T__29=29;
     public static final int T__65=65;
@@ -1870,27 +1867,32 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
     // $ANTLR end "rulePrimitiveTypeEnum"
 
 
-    // $ANTLR start "rule__DataType__Alternatives"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:695:1: rule__DataType__Alternatives : ( ( ruleCollectionDataType ) | ( ruleCompositeDataType ) | ( rulePrimitiveDataType ) );
-    public final void rule__DataType__Alternatives() throws RecognitionException {
+    // $ANTLR start "rule__Repository__Alternatives_3"
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:695:1: rule__Repository__Alternatives_3 : ( ( ( rule__Repository__DatatypesAssignment_3_0 ) ) | ( ( rule__Repository__InterfacesAssignment_3_1 ) ) | ( ( rule__Repository__ComponentsAssignment_3_2 ) ) );
+    public final void rule__Repository__Alternatives_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:699:1: ( ( ruleCollectionDataType ) | ( ruleCompositeDataType ) | ( rulePrimitiveDataType ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:699:1: ( ( ( rule__Repository__DatatypesAssignment_3_0 ) ) | ( ( rule__Repository__InterfacesAssignment_3_1 ) ) | ( ( rule__Repository__ComponentsAssignment_3_2 ) ) )
             int alt1=3;
             switch ( input.LA(1) ) {
-            case 35:
+            case 32:
+            case 34:
+            case 37:
                 {
                 alt1=1;
                 }
                 break;
-            case 37:
+            case 22:
                 {
                 alt1=2;
                 }
                 break;
-            case 40:
+            case 28:
+            case 44:
+            case 45:
+            case 47:
                 {
                 alt1=3;
                 }
@@ -1904,13 +1906,138 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
             switch (alt1) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:700:1: ( ruleCollectionDataType )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:700:1: ( ( rule__Repository__DatatypesAssignment_3_0 ) )
+                    {
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:700:1: ( ( rule__Repository__DatatypesAssignment_3_0 ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:701:1: ( rule__Repository__DatatypesAssignment_3_0 )
+                    {
+                     before(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_0()); 
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:702:1: ( rule__Repository__DatatypesAssignment_3_0 )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:702:2: rule__Repository__DatatypesAssignment_3_0
+                    {
+                    pushFollow(FollowSets000.FOLLOW_rule__Repository__DatatypesAssignment_3_0_in_rule__Repository__Alternatives_31426);
+                    rule__Repository__DatatypesAssignment_3_0();
+
+                    state._fsp--;
+
+
+                    }
+
+                     after(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_0()); 
+
+                    }
+
+
+                    }
+                    break;
+                case 2 :
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:706:6: ( ( rule__Repository__InterfacesAssignment_3_1 ) )
+                    {
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:706:6: ( ( rule__Repository__InterfacesAssignment_3_1 ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:707:1: ( rule__Repository__InterfacesAssignment_3_1 )
+                    {
+                     before(grammarAccess.getRepositoryAccess().getInterfacesAssignment_3_1()); 
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:708:1: ( rule__Repository__InterfacesAssignment_3_1 )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:708:2: rule__Repository__InterfacesAssignment_3_1
+                    {
+                    pushFollow(FollowSets000.FOLLOW_rule__Repository__InterfacesAssignment_3_1_in_rule__Repository__Alternatives_31444);
+                    rule__Repository__InterfacesAssignment_3_1();
+
+                    state._fsp--;
+
+
+                    }
+
+                     after(grammarAccess.getRepositoryAccess().getInterfacesAssignment_3_1()); 
+
+                    }
+
+
+                    }
+                    break;
+                case 3 :
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:712:6: ( ( rule__Repository__ComponentsAssignment_3_2 ) )
+                    {
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:712:6: ( ( rule__Repository__ComponentsAssignment_3_2 ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:713:1: ( rule__Repository__ComponentsAssignment_3_2 )
+                    {
+                     before(grammarAccess.getRepositoryAccess().getComponentsAssignment_3_2()); 
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:714:1: ( rule__Repository__ComponentsAssignment_3_2 )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:714:2: rule__Repository__ComponentsAssignment_3_2
+                    {
+                    pushFollow(FollowSets000.FOLLOW_rule__Repository__ComponentsAssignment_3_2_in_rule__Repository__Alternatives_31462);
+                    rule__Repository__ComponentsAssignment_3_2();
+
+                    state._fsp--;
+
+
+                    }
+
+                     after(grammarAccess.getRepositoryAccess().getComponentsAssignment_3_2()); 
+
+                    }
+
+
+                    }
+                    break;
+
+            }
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end "rule__Repository__Alternatives_3"
+
+
+    // $ANTLR start "rule__DataType__Alternatives"
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:723:1: rule__DataType__Alternatives : ( ( ruleCollectionDataType ) | ( ruleCompositeDataType ) | ( rulePrimitiveDataType ) );
+    public final void rule__DataType__Alternatives() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:727:1: ( ( ruleCollectionDataType ) | ( ruleCompositeDataType ) | ( rulePrimitiveDataType ) )
+            int alt2=3;
+            switch ( input.LA(1) ) {
+            case 32:
+                {
+                alt2=1;
+                }
+                break;
+            case 34:
+                {
+                alt2=2;
+                }
+                break;
+            case 37:
+                {
+                alt2=3;
+                }
+                break;
+            default:
+                NoViableAltException nvae =
+                    new NoViableAltException("", 2, 0, input);
+
+                throw nvae;
+            }
+
+            switch (alt2) {
+                case 1 :
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:728:1: ( ruleCollectionDataType )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:700:1: ( ruleCollectionDataType )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:701:1: ruleCollectionDataType
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:728:1: ( ruleCollectionDataType )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:729:1: ruleCollectionDataType
                     {
                      before(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleCollectionDataType_in_rule__DataType__Alternatives1426);
+                    pushFollow(FollowSets000.FOLLOW_ruleCollectionDataType_in_rule__DataType__Alternatives1495);
                     ruleCollectionDataType();
 
                     state._fsp--;
@@ -1923,13 +2050,13 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:706:6: ( ruleCompositeDataType )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:734:6: ( ruleCompositeDataType )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:706:6: ( ruleCompositeDataType )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:707:1: ruleCompositeDataType
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:734:6: ( ruleCompositeDataType )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:735:1: ruleCompositeDataType
                     {
                      before(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleCompositeDataType_in_rule__DataType__Alternatives1443);
+                    pushFollow(FollowSets000.FOLLOW_ruleCompositeDataType_in_rule__DataType__Alternatives1512);
                     ruleCompositeDataType();
 
                     state._fsp--;
@@ -1942,13 +2069,13 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 3 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:712:6: ( rulePrimitiveDataType )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:740:6: ( rulePrimitiveDataType )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:712:6: ( rulePrimitiveDataType )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:713:1: rulePrimitiveDataType
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:740:6: ( rulePrimitiveDataType )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:741:1: rulePrimitiveDataType
                     {
                      before(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); 
-                    pushFollow(FollowSets000.FOLLOW_rulePrimitiveDataType_in_rule__DataType__Alternatives1460);
+                    pushFollow(FollowSets000.FOLLOW_rulePrimitiveDataType_in_rule__DataType__Alternatives1529);
                     rulePrimitiveDataType();
 
                     state._fsp--;
@@ -1978,51 +2105,51 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent__Alternatives"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:723:1: rule__RepositoryComponent__Alternatives : ( ( ruleRepositoryComponent_Impl ) | ( ruleBasicComponent ) | ( ruleCompositeComponent ) | ( ruleSubSystem ) );
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:751:1: rule__RepositoryComponent__Alternatives : ( ( ruleRepositoryComponent_Impl ) | ( ruleBasicComponent ) | ( ruleCompositeComponent ) | ( ruleSubSystem ) );
     public final void rule__RepositoryComponent__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:727:1: ( ( ruleRepositoryComponent_Impl ) | ( ruleBasicComponent ) | ( ruleCompositeComponent ) | ( ruleSubSystem ) )
-            int alt2=4;
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:755:1: ( ( ruleRepositoryComponent_Impl ) | ( ruleBasicComponent ) | ( ruleCompositeComponent ) | ( ruleSubSystem ) )
+            int alt3=4;
             switch ( input.LA(1) ) {
-            case 31:
+            case 28:
                 {
-                alt2=1;
+                alt3=1;
                 }
                 break;
-            case 47:
+            case 44:
                 {
-                alt2=2;
+                alt3=2;
                 }
                 break;
-            case 48:
+            case 45:
                 {
-                alt2=3;
+                alt3=3;
                 }
                 break;
-            case 50:
+            case 47:
                 {
-                alt2=4;
+                alt3=4;
                 }
                 break;
             default:
                 NoViableAltException nvae =
-                    new NoViableAltException("", 2, 0, input);
+                    new NoViableAltException("", 3, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt2) {
+            switch (alt3) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:728:1: ( ruleRepositoryComponent_Impl )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:756:1: ( ruleRepositoryComponent_Impl )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:728:1: ( ruleRepositoryComponent_Impl )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:729:1: ruleRepositoryComponent_Impl
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:756:1: ( ruleRepositoryComponent_Impl )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:757:1: ruleRepositoryComponent_Impl
                     {
                      before(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_Impl_in_rule__RepositoryComponent__Alternatives1492);
+                    pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_Impl_in_rule__RepositoryComponent__Alternatives1561);
                     ruleRepositoryComponent_Impl();
 
                     state._fsp--;
@@ -2035,13 +2162,13 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:734:6: ( ruleBasicComponent )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:762:6: ( ruleBasicComponent )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:734:6: ( ruleBasicComponent )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:735:1: ruleBasicComponent
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:762:6: ( ruleBasicComponent )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:763:1: ruleBasicComponent
                     {
                      before(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleBasicComponent_in_rule__RepositoryComponent__Alternatives1509);
+                    pushFollow(FollowSets000.FOLLOW_ruleBasicComponent_in_rule__RepositoryComponent__Alternatives1578);
                     ruleBasicComponent();
 
                     state._fsp--;
@@ -2054,13 +2181,13 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 3 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:740:6: ( ruleCompositeComponent )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:768:6: ( ruleCompositeComponent )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:740:6: ( ruleCompositeComponent )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:741:1: ruleCompositeComponent
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:768:6: ( ruleCompositeComponent )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:769:1: ruleCompositeComponent
                     {
                      before(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleCompositeComponent_in_rule__RepositoryComponent__Alternatives1526);
+                    pushFollow(FollowSets000.FOLLOW_ruleCompositeComponent_in_rule__RepositoryComponent__Alternatives1595);
                     ruleCompositeComponent();
 
                     state._fsp--;
@@ -2073,13 +2200,13 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 4 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:746:6: ( ruleSubSystem )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:774:6: ( ruleSubSystem )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:746:6: ( ruleSubSystem )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:747:1: ruleSubSystem
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:774:6: ( ruleSubSystem )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:775:1: ruleSubSystem
                     {
                      before(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); 
-                    pushFollow(FollowSets000.FOLLOW_ruleSubSystem_in_rule__RepositoryComponent__Alternatives1543);
+                    pushFollow(FollowSets000.FOLLOW_ruleSubSystem_in_rule__RepositoryComponent__Alternatives1612);
                     ruleSubSystem();
 
                     state._fsp--;
@@ -2109,37 +2236,37 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__EString__Alternatives"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:757:1: rule__EString__Alternatives : ( ( RULE_STRING ) | ( RULE_ID ) );
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:785:1: rule__EString__Alternatives : ( ( RULE_STRING ) | ( RULE_ID ) );
     public final void rule__EString__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:761:1: ( ( RULE_STRING ) | ( RULE_ID ) )
-            int alt3=2;
-            int LA3_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:789:1: ( ( RULE_STRING ) | ( RULE_ID ) )
+            int alt4=2;
+            int LA4_0 = input.LA(1);
 
-            if ( (LA3_0==RULE_STRING) ) {
-                alt3=1;
+            if ( (LA4_0==RULE_STRING) ) {
+                alt4=1;
             }
-            else if ( (LA3_0==RULE_ID) ) {
-                alt3=2;
+            else if ( (LA4_0==RULE_ID) ) {
+                alt4=2;
             }
             else {
                 NoViableAltException nvae =
-                    new NoViableAltException("", 3, 0, input);
+                    new NoViableAltException("", 4, 0, input);
 
                 throw nvae;
             }
-            switch (alt3) {
+            switch (alt4) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:762:1: ( RULE_STRING )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:790:1: ( RULE_STRING )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:762:1: ( RULE_STRING )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:763:1: RULE_STRING
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:790:1: ( RULE_STRING )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:791:1: RULE_STRING
                     {
                      before(grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); 
-                    match(input,RULE_STRING,FollowSets000.FOLLOW_RULE_STRING_in_rule__EString__Alternatives1575); 
+                    match(input,RULE_STRING,FollowSets000.FOLLOW_RULE_STRING_in_rule__EString__Alternatives1644); 
                      after(grammarAccess.getEStringAccess().getSTRINGTerminalRuleCall_0()); 
 
                     }
@@ -2148,13 +2275,13 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:768:6: ( RULE_ID )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:796:6: ( RULE_ID )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:768:6: ( RULE_ID )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:769:1: RULE_ID
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:796:6: ( RULE_ID )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:797:1: RULE_ID
                     {
                      before(grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); 
-                    match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_rule__EString__Alternatives1592); 
+                    match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_rule__EString__Alternatives1661); 
                      after(grammarAccess.getEStringAccess().getIDTerminalRuleCall_1()); 
 
                     }
@@ -2180,40 +2307,40 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Alternatives_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:779:1: rule__Signature__Alternatives_0 : ( ( ( rule__Signature__ReturnTypeAssignment_0_0 ) ) | ( 'void' ) );
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:807:1: rule__Signature__Alternatives_0 : ( ( ( rule__Signature__ReturnTypeAssignment_0_0 ) ) | ( 'void' ) );
     public final void rule__Signature__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:783:1: ( ( ( rule__Signature__ReturnTypeAssignment_0_0 ) ) | ( 'void' ) )
-            int alt4=2;
-            int LA4_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:811:1: ( ( ( rule__Signature__ReturnTypeAssignment_0_0 ) ) | ( 'void' ) )
+            int alt5=2;
+            int LA5_0 = input.LA(1);
 
-            if ( ((LA4_0>=RULE_STRING && LA4_0<=RULE_ID)) ) {
-                alt4=1;
+            if ( ((LA5_0>=RULE_STRING && LA5_0<=RULE_ID)) ) {
+                alt5=1;
             }
-            else if ( (LA4_0==11) ) {
-                alt4=2;
+            else if ( (LA5_0==11) ) {
+                alt5=2;
             }
             else {
                 NoViableAltException nvae =
-                    new NoViableAltException("", 4, 0, input);
+                    new NoViableAltException("", 5, 0, input);
 
                 throw nvae;
             }
-            switch (alt4) {
+            switch (alt5) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:784:1: ( ( rule__Signature__ReturnTypeAssignment_0_0 ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:812:1: ( ( rule__Signature__ReturnTypeAssignment_0_0 ) )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:784:1: ( ( rule__Signature__ReturnTypeAssignment_0_0 ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:785:1: ( rule__Signature__ReturnTypeAssignment_0_0 )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:812:1: ( ( rule__Signature__ReturnTypeAssignment_0_0 ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:813:1: ( rule__Signature__ReturnTypeAssignment_0_0 )
                     {
                      before(grammarAccess.getSignatureAccess().getReturnTypeAssignment_0_0()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:786:1: ( rule__Signature__ReturnTypeAssignment_0_0 )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:786:2: rule__Signature__ReturnTypeAssignment_0_0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:814:1: ( rule__Signature__ReturnTypeAssignment_0_0 )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:814:2: rule__Signature__ReturnTypeAssignment_0_0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__Signature__ReturnTypeAssignment_0_0_in_rule__Signature__Alternatives_01624);
+                    pushFollow(FollowSets000.FOLLOW_rule__Signature__ReturnTypeAssignment_0_0_in_rule__Signature__Alternatives_01693);
                     rule__Signature__ReturnTypeAssignment_0_0();
 
                     state._fsp--;
@@ -2229,13 +2356,13 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:790:6: ( 'void' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:818:6: ( 'void' )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:790:6: ( 'void' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:791:1: 'void'
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:818:6: ( 'void' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:819:1: 'void'
                     {
                      before(grammarAccess.getSignatureAccess().getVoidKeyword_0_1()); 
-                    match(input,11,FollowSets000.FOLLOW_11_in_rule__Signature__Alternatives_01643); 
+                    match(input,11,FollowSets000.FOLLOW_11_in_rule__Signature__Alternatives_01712); 
                      after(grammarAccess.getSignatureAccess().getVoidKeyword_0_1()); 
 
                     }
@@ -2261,69 +2388,69 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveTypeEnum__Alternatives"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:803:1: rule__PrimitiveTypeEnum__Alternatives : ( ( ( 'INT' ) ) | ( ( 'STRING' ) ) | ( ( 'BOOL' ) ) | ( ( 'DOUBLE' ) ) | ( ( 'CHAR' ) ) | ( ( 'BYTE' ) ) | ( ( 'LONG' ) ) );
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:831:1: rule__PrimitiveTypeEnum__Alternatives : ( ( ( 'INT' ) ) | ( ( 'STRING' ) ) | ( ( 'BOOL' ) ) | ( ( 'DOUBLE' ) ) | ( ( 'CHAR' ) ) | ( ( 'BYTE' ) ) | ( ( 'LONG' ) ) );
     public final void rule__PrimitiveTypeEnum__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:807:1: ( ( ( 'INT' ) ) | ( ( 'STRING' ) ) | ( ( 'BOOL' ) ) | ( ( 'DOUBLE' ) ) | ( ( 'CHAR' ) ) | ( ( 'BYTE' ) ) | ( ( 'LONG' ) ) )
-            int alt5=7;
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:835:1: ( ( ( 'INT' ) ) | ( ( 'STRING' ) ) | ( ( 'BOOL' ) ) | ( ( 'DOUBLE' ) ) | ( ( 'CHAR' ) ) | ( ( 'BYTE' ) ) | ( ( 'LONG' ) ) )
+            int alt6=7;
             switch ( input.LA(1) ) {
             case 12:
                 {
-                alt5=1;
+                alt6=1;
                 }
                 break;
             case 13:
                 {
-                alt5=2;
+                alt6=2;
                 }
                 break;
             case 14:
                 {
-                alt5=3;
+                alt6=3;
                 }
                 break;
             case 15:
                 {
-                alt5=4;
+                alt6=4;
                 }
                 break;
             case 16:
                 {
-                alt5=5;
+                alt6=5;
                 }
                 break;
             case 17:
                 {
-                alt5=6;
+                alt6=6;
                 }
                 break;
             case 18:
                 {
-                alt5=7;
+                alt6=7;
                 }
                 break;
             default:
                 NoViableAltException nvae =
-                    new NoViableAltException("", 5, 0, input);
+                    new NoViableAltException("", 6, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt5) {
+            switch (alt6) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:808:1: ( ( 'INT' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:836:1: ( ( 'INT' ) )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:808:1: ( ( 'INT' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:809:1: ( 'INT' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:836:1: ( ( 'INT' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:837:1: ( 'INT' )
                     {
                      before(grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:810:1: ( 'INT' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:810:3: 'INT'
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:838:1: ( 'INT' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:838:3: 'INT'
                     {
-                    match(input,12,FollowSets000.FOLLOW_12_in_rule__PrimitiveTypeEnum__Alternatives1678); 
+                    match(input,12,FollowSets000.FOLLOW_12_in_rule__PrimitiveTypeEnum__Alternatives1747); 
 
                     }
 
@@ -2335,16 +2462,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:815:6: ( ( 'STRING' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:843:6: ( ( 'STRING' ) )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:815:6: ( ( 'STRING' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:816:1: ( 'STRING' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:843:6: ( ( 'STRING' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:844:1: ( 'STRING' )
                     {
                      before(grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:817:1: ( 'STRING' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:817:3: 'STRING'
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:845:1: ( 'STRING' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:845:3: 'STRING'
                     {
-                    match(input,13,FollowSets000.FOLLOW_13_in_rule__PrimitiveTypeEnum__Alternatives1699); 
+                    match(input,13,FollowSets000.FOLLOW_13_in_rule__PrimitiveTypeEnum__Alternatives1768); 
 
                     }
 
@@ -2356,16 +2483,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 3 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:822:6: ( ( 'BOOL' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:850:6: ( ( 'BOOL' ) )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:822:6: ( ( 'BOOL' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:823:1: ( 'BOOL' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:850:6: ( ( 'BOOL' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:851:1: ( 'BOOL' )
                     {
                      before(grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:824:1: ( 'BOOL' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:824:3: 'BOOL'
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:852:1: ( 'BOOL' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:852:3: 'BOOL'
                     {
-                    match(input,14,FollowSets000.FOLLOW_14_in_rule__PrimitiveTypeEnum__Alternatives1720); 
+                    match(input,14,FollowSets000.FOLLOW_14_in_rule__PrimitiveTypeEnum__Alternatives1789); 
 
                     }
 
@@ -2377,16 +2504,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 4 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:829:6: ( ( 'DOUBLE' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:857:6: ( ( 'DOUBLE' ) )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:829:6: ( ( 'DOUBLE' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:830:1: ( 'DOUBLE' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:857:6: ( ( 'DOUBLE' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:858:1: ( 'DOUBLE' )
                     {
                      before(grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:831:1: ( 'DOUBLE' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:831:3: 'DOUBLE'
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:859:1: ( 'DOUBLE' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:859:3: 'DOUBLE'
                     {
-                    match(input,15,FollowSets000.FOLLOW_15_in_rule__PrimitiveTypeEnum__Alternatives1741); 
+                    match(input,15,FollowSets000.FOLLOW_15_in_rule__PrimitiveTypeEnum__Alternatives1810); 
 
                     }
 
@@ -2398,16 +2525,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 5 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:836:6: ( ( 'CHAR' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:864:6: ( ( 'CHAR' ) )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:836:6: ( ( 'CHAR' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:837:1: ( 'CHAR' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:864:6: ( ( 'CHAR' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:865:1: ( 'CHAR' )
                     {
                      before(grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:838:1: ( 'CHAR' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:838:3: 'CHAR'
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:866:1: ( 'CHAR' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:866:3: 'CHAR'
                     {
-                    match(input,16,FollowSets000.FOLLOW_16_in_rule__PrimitiveTypeEnum__Alternatives1762); 
+                    match(input,16,FollowSets000.FOLLOW_16_in_rule__PrimitiveTypeEnum__Alternatives1831); 
 
                     }
 
@@ -2419,16 +2546,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 6 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:843:6: ( ( 'BYTE' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:871:6: ( ( 'BYTE' ) )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:843:6: ( ( 'BYTE' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:844:1: ( 'BYTE' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:871:6: ( ( 'BYTE' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:872:1: ( 'BYTE' )
                     {
                      before(grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:845:1: ( 'BYTE' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:845:3: 'BYTE'
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:873:1: ( 'BYTE' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:873:3: 'BYTE'
                     {
-                    match(input,17,FollowSets000.FOLLOW_17_in_rule__PrimitiveTypeEnum__Alternatives1783); 
+                    match(input,17,FollowSets000.FOLLOW_17_in_rule__PrimitiveTypeEnum__Alternatives1852); 
 
                     }
 
@@ -2440,16 +2567,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
                     }
                     break;
                 case 7 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:850:6: ( ( 'LONG' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:878:6: ( ( 'LONG' ) )
                     {
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:850:6: ( ( 'LONG' ) )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:851:1: ( 'LONG' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:878:6: ( ( 'LONG' ) )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:879:1: ( 'LONG' )
                     {
                      before(grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); 
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:852:1: ( 'LONG' )
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:852:3: 'LONG'
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:880:1: ( 'LONG' )
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:880:3: 'LONG'
                     {
-                    match(input,18,FollowSets000.FOLLOW_18_in_rule__PrimitiveTypeEnum__Alternatives1804); 
+                    match(input,18,FollowSets000.FOLLOW_18_in_rule__PrimitiveTypeEnum__Alternatives1873); 
 
                     }
 
@@ -2478,21 +2605,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Repository__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:864:1: rule__Repository__Group__0 : rule__Repository__Group__0__Impl rule__Repository__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:892:1: rule__Repository__Group__0 : rule__Repository__Group__0__Impl rule__Repository__Group__1 ;
     public final void rule__Repository__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:868:1: ( rule__Repository__Group__0__Impl rule__Repository__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:869:2: rule__Repository__Group__0__Impl rule__Repository__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:896:1: ( rule__Repository__Group__0__Impl rule__Repository__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:897:2: rule__Repository__Group__0__Impl rule__Repository__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__0__Impl_in_rule__Repository__Group__01837);
+            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__0__Impl_in_rule__Repository__Group__01906);
             rule__Repository__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__1_in_rule__Repository__Group__01840);
+            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__1_in_rule__Repository__Group__01909);
             rule__Repository__Group__1();
 
             state._fsp--;
@@ -2516,20 +2643,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Repository__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:876:1: rule__Repository__Group__0__Impl : ( 'Repository' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:904:1: rule__Repository__Group__0__Impl : ( 'Repository' ) ;
     public final void rule__Repository__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:880:1: ( ( 'Repository' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:881:1: ( 'Repository' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:908:1: ( ( 'Repository' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:909:1: ( 'Repository' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:881:1: ( 'Repository' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:882:1: 'Repository'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:909:1: ( 'Repository' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:910:1: 'Repository'
             {
              before(grammarAccess.getRepositoryAccess().getRepositoryKeyword_0()); 
-            match(input,19,FollowSets000.FOLLOW_19_in_rule__Repository__Group__0__Impl1868); 
+            match(input,19,FollowSets000.FOLLOW_19_in_rule__Repository__Group__0__Impl1937); 
              after(grammarAccess.getRepositoryAccess().getRepositoryKeyword_0()); 
 
             }
@@ -2553,21 +2680,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Repository__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:895:1: rule__Repository__Group__1 : rule__Repository__Group__1__Impl rule__Repository__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:923:1: rule__Repository__Group__1 : rule__Repository__Group__1__Impl rule__Repository__Group__2 ;
     public final void rule__Repository__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:899:1: ( rule__Repository__Group__1__Impl rule__Repository__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:900:2: rule__Repository__Group__1__Impl rule__Repository__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:927:1: ( rule__Repository__Group__1__Impl rule__Repository__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:928:2: rule__Repository__Group__1__Impl rule__Repository__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__1__Impl_in_rule__Repository__Group__11899);
+            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__1__Impl_in_rule__Repository__Group__11968);
             rule__Repository__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__2_in_rule__Repository__Group__11902);
+            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__2_in_rule__Repository__Group__11971);
             rule__Repository__Group__2();
 
             state._fsp--;
@@ -2591,23 +2718,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Repository__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:907:1: rule__Repository__Group__1__Impl : ( ( rule__Repository__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:935:1: rule__Repository__Group__1__Impl : ( ( rule__Repository__NameAssignment_1 ) ) ;
     public final void rule__Repository__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:911:1: ( ( ( rule__Repository__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:912:1: ( ( rule__Repository__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:939:1: ( ( ( rule__Repository__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:940:1: ( ( rule__Repository__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:912:1: ( ( rule__Repository__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:913:1: ( rule__Repository__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:940:1: ( ( rule__Repository__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:941:1: ( rule__Repository__NameAssignment_1 )
             {
              before(grammarAccess.getRepositoryAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:914:1: ( rule__Repository__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:914:2: rule__Repository__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:942:1: ( rule__Repository__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:942:2: rule__Repository__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__NameAssignment_1_in_rule__Repository__Group__1__Impl1929);
+            pushFollow(FollowSets000.FOLLOW_rule__Repository__NameAssignment_1_in_rule__Repository__Group__1__Impl1998);
             rule__Repository__NameAssignment_1();
 
             state._fsp--;
@@ -2638,21 +2765,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Repository__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:924:1: rule__Repository__Group__2 : rule__Repository__Group__2__Impl rule__Repository__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:952:1: rule__Repository__Group__2 : rule__Repository__Group__2__Impl rule__Repository__Group__3 ;
     public final void rule__Repository__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:928:1: ( rule__Repository__Group__2__Impl rule__Repository__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:929:2: rule__Repository__Group__2__Impl rule__Repository__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:956:1: ( rule__Repository__Group__2__Impl rule__Repository__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:957:2: rule__Repository__Group__2__Impl rule__Repository__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__2__Impl_in_rule__Repository__Group__21959);
+            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__2__Impl_in_rule__Repository__Group__22028);
             rule__Repository__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__3_in_rule__Repository__Group__21962);
+            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__3_in_rule__Repository__Group__22031);
             rule__Repository__Group__3();
 
             state._fsp--;
@@ -2676,20 +2803,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Repository__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:936:1: rule__Repository__Group__2__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:964:1: rule__Repository__Group__2__Impl : ( '{' ) ;
     public final void rule__Repository__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:940:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:941:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:968:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:969:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:941:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:942:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:969:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:970:1: '{'
             {
              before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Repository__Group__2__Impl1990); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__Repository__Group__2__Impl2059); 
              after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2()); 
 
             }
@@ -2713,21 +2840,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Repository__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:955:1: rule__Repository__Group__3 : rule__Repository__Group__3__Impl rule__Repository__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:983:1: rule__Repository__Group__3 : rule__Repository__Group__3__Impl rule__Repository__Group__4 ;
     public final void rule__Repository__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:959:1: ( rule__Repository__Group__3__Impl rule__Repository__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:960:2: rule__Repository__Group__3__Impl rule__Repository__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:987:1: ( rule__Repository__Group__3__Impl rule__Repository__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:988:2: rule__Repository__Group__3__Impl rule__Repository__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__3__Impl_in_rule__Repository__Group__32021);
+            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__3__Impl_in_rule__Repository__Group__32090);
             rule__Repository__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__4_in_rule__Repository__Group__32024);
+            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__4_in_rule__Repository__Group__32093);
             rule__Repository__Group__4();
 
             state._fsp--;
@@ -2751,42 +2878,49 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Repository__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:967:1: rule__Repository__Group__3__Impl : ( ( rule__Repository__Group_3__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:995:1: rule__Repository__Group__3__Impl : ( ( rule__Repository__Alternatives_3 )* ) ;
     public final void rule__Repository__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:971:1: ( ( ( rule__Repository__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:972:1: ( ( rule__Repository__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:999:1: ( ( ( rule__Repository__Alternatives_3 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1000:1: ( ( rule__Repository__Alternatives_3 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:972:1: ( ( rule__Repository__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:973:1: ( rule__Repository__Group_3__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1000:1: ( ( rule__Repository__Alternatives_3 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1001:1: ( rule__Repository__Alternatives_3 )*
             {
-             before(grammarAccess.getRepositoryAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:974:1: ( rule__Repository__Group_3__0 )?
-            int alt6=2;
-            int LA6_0 = input.LA(1);
+             before(grammarAccess.getRepositoryAccess().getAlternatives_3()); 
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1002:1: ( rule__Repository__Alternatives_3 )*
+            loop7:
+            do {
+                int alt7=2;
+                int LA7_0 = input.LA(1);
 
-            if ( (LA6_0==22) ) {
-                alt6=1;
-            }
-            switch (alt6) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:974:2: rule__Repository__Group_3__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__0_in_rule__Repository__Group__3__Impl2051);
-                    rule__Repository__Group_3__0();
+                if ( (LA7_0==22||LA7_0==28||LA7_0==32||LA7_0==34||LA7_0==37||(LA7_0>=44 && LA7_0<=45)||LA7_0==47) ) {
+                    alt7=1;
+                }
 
-                    state._fsp--;
 
+                switch (alt7) {
+            	case 1 :
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1002:2: rule__Repository__Alternatives_3
+            	    {
+            	    pushFollow(FollowSets000.FOLLOW_rule__Repository__Alternatives_3_in_rule__Repository__Group__3__Impl2120);
+            	    rule__Repository__Alternatives_3();
+
+            	    state._fsp--;
 
-                    }
-                    break;
 
-            }
+            	    }
+            	    break;
+
+            	default :
+            	    break loop7;
+                }
+            } while (true);
 
-             after(grammarAccess.getRepositoryAccess().getGroup_3()); 
+             after(grammarAccess.getRepositoryAccess().getAlternatives_3()); 
 
             }
 
@@ -2809,25 +2943,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Repository__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:984:1: rule__Repository__Group__4 : rule__Repository__Group__4__Impl rule__Repository__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1012:1: rule__Repository__Group__4 : rule__Repository__Group__4__Impl ;
     public final void rule__Repository__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:988:1: ( rule__Repository__Group__4__Impl rule__Repository__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:989:2: rule__Repository__Group__4__Impl rule__Repository__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1016:1: ( rule__Repository__Group__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1017:2: rule__Repository__Group__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__4__Impl_in_rule__Repository__Group__42082);
+            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__4__Impl_in_rule__Repository__Group__42151);
             rule__Repository__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__5_in_rule__Repository__Group__42085);
-            rule__Repository__Group__5();
-
-            state._fsp--;
-
 
             }
 
@@ -2846,1898 +2975,22 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
     // $ANTLR end "rule__Repository__Group__4"
 
 
-    // $ANTLR start "rule__Repository__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:996:1: rule__Repository__Group__4__Impl : ( ( rule__Repository__Group_4__0 )? ) ;
-    public final void rule__Repository__Group__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1000:1: ( ( ( rule__Repository__Group_4__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1001:1: ( ( rule__Repository__Group_4__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1001:1: ( ( rule__Repository__Group_4__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1002:1: ( rule__Repository__Group_4__0 )?
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1003:1: ( rule__Repository__Group_4__0 )?
-            int alt7=2;
-            int LA7_0 = input.LA(1);
-
-            if ( (LA7_0==24) ) {
-                alt7=1;
-            }
-            switch (alt7) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1003:2: rule__Repository__Group_4__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__0_in_rule__Repository__Group__4__Impl2112);
-                    rule__Repository__Group_4__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getGroup_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__4__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1013:1: rule__Repository__Group__5 : rule__Repository__Group__5__Impl rule__Repository__Group__6 ;
-    public final void rule__Repository__Group__5() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1017:1: ( rule__Repository__Group__5__Impl rule__Repository__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1018:2: rule__Repository__Group__5__Impl rule__Repository__Group__6
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__5__Impl_in_rule__Repository__Group__52143);
-            rule__Repository__Group__5__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__6_in_rule__Repository__Group__52146);
-            rule__Repository__Group__6();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__5"
-
-
-    // $ANTLR start "rule__Repository__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1025:1: rule__Repository__Group__5__Impl : ( ( rule__Repository__Group_5__0 )? ) ;
-    public final void rule__Repository__Group__5__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1029:1: ( ( ( rule__Repository__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1030:1: ( ( rule__Repository__Group_5__0 )? )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1030:1: ( ( rule__Repository__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1031:1: ( rule__Repository__Group_5__0 )?
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1032:1: ( rule__Repository__Group_5__0 )?
-            int alt8=2;
-            int LA8_0 = input.LA(1);
-
-            if ( (LA8_0==25) ) {
-                alt8=1;
-            }
-            switch (alt8) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1032:2: rule__Repository__Group_5__0
-                    {
-                    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__0_in_rule__Repository__Group__5__Impl2173);
-                    rule__Repository__Group_5__0();
-
-                    state._fsp--;
-
-
-                    }
-                    break;
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getGroup_5()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__5__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1042:1: rule__Repository__Group__6 : rule__Repository__Group__6__Impl ;
-    public final void rule__Repository__Group__6() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1046:1: ( rule__Repository__Group__6__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1047:2: rule__Repository__Group__6__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group__6__Impl_in_rule__Repository__Group__62204);
-            rule__Repository__Group__6__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__6"
-
-
-    // $ANTLR start "rule__Repository__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1053:1: rule__Repository__Group__6__Impl : ( '}' ) ;
-    public final void rule__Repository__Group__6__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1057:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1058:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1058:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1059:1: '}'
-            {
-             before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Repository__Group__6__Impl2232); 
-             after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group__6__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1086:1: rule__Repository__Group_3__0 : rule__Repository__Group_3__0__Impl rule__Repository__Group_3__1 ;
-    public final void rule__Repository__Group_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1090:1: ( rule__Repository__Group_3__0__Impl rule__Repository__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1091:2: rule__Repository__Group_3__0__Impl rule__Repository__Group_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__0__Impl_in_rule__Repository__Group_3__02277);
-            rule__Repository__Group_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__1_in_rule__Repository__Group_3__02280);
-            rule__Repository__Group_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__0"
-
-
-    // $ANTLR start "rule__Repository__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1098:1: rule__Repository__Group_3__0__Impl : ( 'datatypes' ) ;
-    public final void rule__Repository__Group_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1102:1: ( ( 'datatypes' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1103:1: ( 'datatypes' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1103:1: ( 'datatypes' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1104:1: 'datatypes'
-            {
-             before(grammarAccess.getRepositoryAccess().getDatatypesKeyword_3_0()); 
-            match(input,22,FollowSets000.FOLLOW_22_in_rule__Repository__Group_3__0__Impl2308); 
-             after(grammarAccess.getRepositoryAccess().getDatatypesKeyword_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1117:1: rule__Repository__Group_3__1 : rule__Repository__Group_3__1__Impl rule__Repository__Group_3__2 ;
-    public final void rule__Repository__Group_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1121:1: ( rule__Repository__Group_3__1__Impl rule__Repository__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1122:2: rule__Repository__Group_3__1__Impl rule__Repository__Group_3__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__1__Impl_in_rule__Repository__Group_3__12339);
-            rule__Repository__Group_3__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__2_in_rule__Repository__Group_3__12342);
-            rule__Repository__Group_3__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__1"
-
-
-    // $ANTLR start "rule__Repository__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1129:1: rule__Repository__Group_3__1__Impl : ( '{' ) ;
-    public final void rule__Repository__Group_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1133:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1134:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1134:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1135:1: '{'
-            {
-             before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Repository__Group_3__1__Impl2370); 
-             after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1148:1: rule__Repository__Group_3__2 : rule__Repository__Group_3__2__Impl rule__Repository__Group_3__3 ;
-    public final void rule__Repository__Group_3__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1152:1: ( rule__Repository__Group_3__2__Impl rule__Repository__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1153:2: rule__Repository__Group_3__2__Impl rule__Repository__Group_3__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__2__Impl_in_rule__Repository__Group_3__22401);
-            rule__Repository__Group_3__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__3_in_rule__Repository__Group_3__22404);
-            rule__Repository__Group_3__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__2"
-
-
-    // $ANTLR start "rule__Repository__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1160:1: rule__Repository__Group_3__2__Impl : ( ( rule__Repository__DatatypesAssignment_3_2 ) ) ;
-    public final void rule__Repository__Group_3__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1164:1: ( ( ( rule__Repository__DatatypesAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1165:1: ( ( rule__Repository__DatatypesAssignment_3_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1165:1: ( ( rule__Repository__DatatypesAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1166:1: ( rule__Repository__DatatypesAssignment_3_2 )
-            {
-             before(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1167:1: ( rule__Repository__DatatypesAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1167:2: rule__Repository__DatatypesAssignment_3_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__DatatypesAssignment_3_2_in_rule__Repository__Group_3__2__Impl2431);
-            rule__Repository__DatatypesAssignment_3_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__2__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1177:1: rule__Repository__Group_3__3 : rule__Repository__Group_3__3__Impl rule__Repository__Group_3__4 ;
-    public final void rule__Repository__Group_3__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1181:1: ( rule__Repository__Group_3__3__Impl rule__Repository__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1182:2: rule__Repository__Group_3__3__Impl rule__Repository__Group_3__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__3__Impl_in_rule__Repository__Group_3__32461);
-            rule__Repository__Group_3__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__4_in_rule__Repository__Group_3__32464);
-            rule__Repository__Group_3__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__3"
-
-
-    // $ANTLR start "rule__Repository__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1189:1: rule__Repository__Group_3__3__Impl : ( ( rule__Repository__Group_3_3__0 )* ) ;
-    public final void rule__Repository__Group_3__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1193:1: ( ( ( rule__Repository__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1194:1: ( ( rule__Repository__Group_3_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1194:1: ( ( rule__Repository__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1195:1: ( rule__Repository__Group_3_3__0 )*
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1196:1: ( rule__Repository__Group_3_3__0 )*
-            loop9:
-            do {
-                int alt9=2;
-                int LA9_0 = input.LA(1);
-
-                if ( (LA9_0==23) ) {
-                    alt9=1;
-                }
-
-
-                switch (alt9) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1196:2: rule__Repository__Group_3_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3_3__0_in_rule__Repository__Group_3__3__Impl2491);
-            	    rule__Repository__Group_3_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop9;
-                }
-            } while (true);
-
-             after(grammarAccess.getRepositoryAccess().getGroup_3_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__3__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1206:1: rule__Repository__Group_3__4 : rule__Repository__Group_3__4__Impl ;
-    public final void rule__Repository__Group_3__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1210:1: ( rule__Repository__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1211:2: rule__Repository__Group_3__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3__4__Impl_in_rule__Repository__Group_3__42522);
-            rule__Repository__Group_3__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__4"
-
-
-    // $ANTLR start "rule__Repository__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1217:1: rule__Repository__Group_3__4__Impl : ( '}' ) ;
-    public final void rule__Repository__Group_3__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1221:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1222:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1222:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1223:1: '}'
-            {
-             before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Repository__Group_3__4__Impl2550); 
-             after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3__4__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1246:1: rule__Repository__Group_3_3__0 : rule__Repository__Group_3_3__0__Impl rule__Repository__Group_3_3__1 ;
-    public final void rule__Repository__Group_3_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1250:1: ( rule__Repository__Group_3_3__0__Impl rule__Repository__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1251:2: rule__Repository__Group_3_3__0__Impl rule__Repository__Group_3_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3_3__0__Impl_in_rule__Repository__Group_3_3__02591);
-            rule__Repository__Group_3_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3_3__1_in_rule__Repository__Group_3_3__02594);
-            rule__Repository__Group_3_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3_3__0"
-
-
-    // $ANTLR start "rule__Repository__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1258:1: rule__Repository__Group_3_3__0__Impl : ( ',' ) ;
-    public final void rule__Repository__Group_3_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1262:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1263:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1263:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1264:1: ','
-            {
-             before(grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Repository__Group_3_3__0__Impl2622); 
-             after(grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3_3__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1277:1: rule__Repository__Group_3_3__1 : rule__Repository__Group_3_3__1__Impl ;
-    public final void rule__Repository__Group_3_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1281:1: ( rule__Repository__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1282:2: rule__Repository__Group_3_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_3_3__1__Impl_in_rule__Repository__Group_3_3__12653);
-            rule__Repository__Group_3_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3_3__1"
-
-
-    // $ANTLR start "rule__Repository__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1288:1: rule__Repository__Group_3_3__1__Impl : ( ( rule__Repository__DatatypesAssignment_3_3_1 ) ) ;
-    public final void rule__Repository__Group_3_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1292:1: ( ( ( rule__Repository__DatatypesAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1293:1: ( ( rule__Repository__DatatypesAssignment_3_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1293:1: ( ( rule__Repository__DatatypesAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1294:1: ( rule__Repository__DatatypesAssignment_3_3_1 )
-            {
-             before(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1295:1: ( rule__Repository__DatatypesAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1295:2: rule__Repository__DatatypesAssignment_3_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__DatatypesAssignment_3_3_1_in_rule__Repository__Group_3_3__1__Impl2680);
-            rule__Repository__DatatypesAssignment_3_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_3_3__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1309:1: rule__Repository__Group_4__0 : rule__Repository__Group_4__0__Impl rule__Repository__Group_4__1 ;
-    public final void rule__Repository__Group_4__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1313:1: ( rule__Repository__Group_4__0__Impl rule__Repository__Group_4__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1314:2: rule__Repository__Group_4__0__Impl rule__Repository__Group_4__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__0__Impl_in_rule__Repository__Group_4__02714);
-            rule__Repository__Group_4__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__1_in_rule__Repository__Group_4__02717);
-            rule__Repository__Group_4__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__0"
-
-
-    // $ANTLR start "rule__Repository__Group_4__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1321:1: rule__Repository__Group_4__0__Impl : ( 'interfaces' ) ;
-    public final void rule__Repository__Group_4__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1325:1: ( ( 'interfaces' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1326:1: ( 'interfaces' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1326:1: ( 'interfaces' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1327:1: 'interfaces'
-            {
-             before(grammarAccess.getRepositoryAccess().getInterfacesKeyword_4_0()); 
-            match(input,24,FollowSets000.FOLLOW_24_in_rule__Repository__Group_4__0__Impl2745); 
-             after(grammarAccess.getRepositoryAccess().getInterfacesKeyword_4_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1340:1: rule__Repository__Group_4__1 : rule__Repository__Group_4__1__Impl rule__Repository__Group_4__2 ;
-    public final void rule__Repository__Group_4__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1344:1: ( rule__Repository__Group_4__1__Impl rule__Repository__Group_4__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1345:2: rule__Repository__Group_4__1__Impl rule__Repository__Group_4__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__1__Impl_in_rule__Repository__Group_4__12776);
-            rule__Repository__Group_4__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__2_in_rule__Repository__Group_4__12779);
-            rule__Repository__Group_4__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__1"
-
-
-    // $ANTLR start "rule__Repository__Group_4__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1352:1: rule__Repository__Group_4__1__Impl : ( '{' ) ;
-    public final void rule__Repository__Group_4__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1356:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1357:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1357:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1358:1: '{'
-            {
-             before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Repository__Group_4__1__Impl2807); 
-             after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1371:1: rule__Repository__Group_4__2 : rule__Repository__Group_4__2__Impl rule__Repository__Group_4__3 ;
-    public final void rule__Repository__Group_4__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1375:1: ( rule__Repository__Group_4__2__Impl rule__Repository__Group_4__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1376:2: rule__Repository__Group_4__2__Impl rule__Repository__Group_4__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__2__Impl_in_rule__Repository__Group_4__22838);
-            rule__Repository__Group_4__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__3_in_rule__Repository__Group_4__22841);
-            rule__Repository__Group_4__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__2"
-
-
-    // $ANTLR start "rule__Repository__Group_4__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1383:1: rule__Repository__Group_4__2__Impl : ( ( rule__Repository__InterfacesAssignment_4_2 ) ) ;
-    public final void rule__Repository__Group_4__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1387:1: ( ( ( rule__Repository__InterfacesAssignment_4_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1388:1: ( ( rule__Repository__InterfacesAssignment_4_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1388:1: ( ( rule__Repository__InterfacesAssignment_4_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1389:1: ( rule__Repository__InterfacesAssignment_4_2 )
-            {
-             before(grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1390:1: ( rule__Repository__InterfacesAssignment_4_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1390:2: rule__Repository__InterfacesAssignment_4_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__InterfacesAssignment_4_2_in_rule__Repository__Group_4__2__Impl2868);
-            rule__Repository__InterfacesAssignment_4_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__2__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1400:1: rule__Repository__Group_4__3 : rule__Repository__Group_4__3__Impl rule__Repository__Group_4__4 ;
-    public final void rule__Repository__Group_4__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1404:1: ( rule__Repository__Group_4__3__Impl rule__Repository__Group_4__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1405:2: rule__Repository__Group_4__3__Impl rule__Repository__Group_4__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__3__Impl_in_rule__Repository__Group_4__32898);
-            rule__Repository__Group_4__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__4_in_rule__Repository__Group_4__32901);
-            rule__Repository__Group_4__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__3"
-
-
-    // $ANTLR start "rule__Repository__Group_4__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1412:1: rule__Repository__Group_4__3__Impl : ( ( rule__Repository__Group_4_3__0 )* ) ;
-    public final void rule__Repository__Group_4__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1416:1: ( ( ( rule__Repository__Group_4_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1417:1: ( ( rule__Repository__Group_4_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1417:1: ( ( rule__Repository__Group_4_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1418:1: ( rule__Repository__Group_4_3__0 )*
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_4_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1419:1: ( rule__Repository__Group_4_3__0 )*
-            loop10:
-            do {
-                int alt10=2;
-                int LA10_0 = input.LA(1);
-
-                if ( (LA10_0==23) ) {
-                    alt10=1;
-                }
-
-
-                switch (alt10) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1419:2: rule__Repository__Group_4_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4_3__0_in_rule__Repository__Group_4__3__Impl2928);
-            	    rule__Repository__Group_4_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop10;
-                }
-            } while (true);
-
-             after(grammarAccess.getRepositoryAccess().getGroup_4_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__3__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1429:1: rule__Repository__Group_4__4 : rule__Repository__Group_4__4__Impl ;
-    public final void rule__Repository__Group_4__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1433:1: ( rule__Repository__Group_4__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1434:2: rule__Repository__Group_4__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4__4__Impl_in_rule__Repository__Group_4__42959);
-            rule__Repository__Group_4__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__4"
-
-
-    // $ANTLR start "rule__Repository__Group_4__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1440:1: rule__Repository__Group_4__4__Impl : ( '}' ) ;
-    public final void rule__Repository__Group_4__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1444:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1445:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1445:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1446:1: '}'
-            {
-             before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Repository__Group_4__4__Impl2987); 
-             after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4__4__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1469:1: rule__Repository__Group_4_3__0 : rule__Repository__Group_4_3__0__Impl rule__Repository__Group_4_3__1 ;
-    public final void rule__Repository__Group_4_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1473:1: ( rule__Repository__Group_4_3__0__Impl rule__Repository__Group_4_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1474:2: rule__Repository__Group_4_3__0__Impl rule__Repository__Group_4_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4_3__0__Impl_in_rule__Repository__Group_4_3__03028);
-            rule__Repository__Group_4_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4_3__1_in_rule__Repository__Group_4_3__03031);
-            rule__Repository__Group_4_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4_3__0"
-
-
-    // $ANTLR start "rule__Repository__Group_4_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1481:1: rule__Repository__Group_4_3__0__Impl : ( ',' ) ;
-    public final void rule__Repository__Group_4_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1485:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1486:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1486:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1487:1: ','
-            {
-             before(grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Repository__Group_4_3__0__Impl3059); 
-             after(grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4_3__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_4_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1500:1: rule__Repository__Group_4_3__1 : rule__Repository__Group_4_3__1__Impl ;
-    public final void rule__Repository__Group_4_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1504:1: ( rule__Repository__Group_4_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1505:2: rule__Repository__Group_4_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_4_3__1__Impl_in_rule__Repository__Group_4_3__13090);
-            rule__Repository__Group_4_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4_3__1"
-
-
-    // $ANTLR start "rule__Repository__Group_4_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1511:1: rule__Repository__Group_4_3__1__Impl : ( ( rule__Repository__InterfacesAssignment_4_3_1 ) ) ;
-    public final void rule__Repository__Group_4_3__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1515:1: ( ( ( rule__Repository__InterfacesAssignment_4_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1516:1: ( ( rule__Repository__InterfacesAssignment_4_3_1 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1516:1: ( ( rule__Repository__InterfacesAssignment_4_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1517:1: ( rule__Repository__InterfacesAssignment_4_3_1 )
-            {
-             before(grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1518:1: ( rule__Repository__InterfacesAssignment_4_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1518:2: rule__Repository__InterfacesAssignment_4_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__InterfacesAssignment_4_3_1_in_rule__Repository__Group_4_3__1__Impl3117);
-            rule__Repository__InterfacesAssignment_4_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_3_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_4_3__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1532:1: rule__Repository__Group_5__0 : rule__Repository__Group_5__0__Impl rule__Repository__Group_5__1 ;
-    public final void rule__Repository__Group_5__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1536:1: ( rule__Repository__Group_5__0__Impl rule__Repository__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1537:2: rule__Repository__Group_5__0__Impl rule__Repository__Group_5__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__0__Impl_in_rule__Repository__Group_5__03151);
-            rule__Repository__Group_5__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__1_in_rule__Repository__Group_5__03154);
-            rule__Repository__Group_5__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__0"
-
-
-    // $ANTLR start "rule__Repository__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1544:1: rule__Repository__Group_5__0__Impl : ( 'components' ) ;
-    public final void rule__Repository__Group_5__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1548:1: ( ( 'components' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1549:1: ( 'components' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1549:1: ( 'components' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1550:1: 'components'
-            {
-             before(grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0()); 
-            match(input,25,FollowSets000.FOLLOW_25_in_rule__Repository__Group_5__0__Impl3182); 
-             after(grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1563:1: rule__Repository__Group_5__1 : rule__Repository__Group_5__1__Impl rule__Repository__Group_5__2 ;
-    public final void rule__Repository__Group_5__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1567:1: ( rule__Repository__Group_5__1__Impl rule__Repository__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1568:2: rule__Repository__Group_5__1__Impl rule__Repository__Group_5__2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__1__Impl_in_rule__Repository__Group_5__13213);
-            rule__Repository__Group_5__1__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__2_in_rule__Repository__Group_5__13216);
-            rule__Repository__Group_5__2();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__1"
-
-
-    // $ANTLR start "rule__Repository__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1575:1: rule__Repository__Group_5__1__Impl : ( '{' ) ;
-    public final void rule__Repository__Group_5__1__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1579:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1580:1: ( '{' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1580:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1581:1: '{'
-            {
-             before(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Repository__Group_5__1__Impl3244); 
-             after(grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__1__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1594:1: rule__Repository__Group_5__2 : rule__Repository__Group_5__2__Impl rule__Repository__Group_5__3 ;
-    public final void rule__Repository__Group_5__2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1598:1: ( rule__Repository__Group_5__2__Impl rule__Repository__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1599:2: rule__Repository__Group_5__2__Impl rule__Repository__Group_5__3
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__2__Impl_in_rule__Repository__Group_5__23275);
-            rule__Repository__Group_5__2__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__3_in_rule__Repository__Group_5__23278);
-            rule__Repository__Group_5__3();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__2"
-
-
-    // $ANTLR start "rule__Repository__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1606:1: rule__Repository__Group_5__2__Impl : ( ( rule__Repository__ComponentsAssignment_5_2 ) ) ;
-    public final void rule__Repository__Group_5__2__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1610:1: ( ( ( rule__Repository__ComponentsAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1611:1: ( ( rule__Repository__ComponentsAssignment_5_2 ) )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1611:1: ( ( rule__Repository__ComponentsAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1612:1: ( rule__Repository__ComponentsAssignment_5_2 )
-            {
-             before(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1613:1: ( rule__Repository__ComponentsAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1613:2: rule__Repository__ComponentsAssignment_5_2
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__ComponentsAssignment_5_2_in_rule__Repository__Group_5__2__Impl3305);
-            rule__Repository__ComponentsAssignment_5_2();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__2__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1623:1: rule__Repository__Group_5__3 : rule__Repository__Group_5__3__Impl rule__Repository__Group_5__4 ;
-    public final void rule__Repository__Group_5__3() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1627:1: ( rule__Repository__Group_5__3__Impl rule__Repository__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1628:2: rule__Repository__Group_5__3__Impl rule__Repository__Group_5__4
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__3__Impl_in_rule__Repository__Group_5__33335);
-            rule__Repository__Group_5__3__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__4_in_rule__Repository__Group_5__33338);
-            rule__Repository__Group_5__4();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__3"
-
-
-    // $ANTLR start "rule__Repository__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1635:1: rule__Repository__Group_5__3__Impl : ( ( rule__Repository__Group_5_3__0 )* ) ;
-    public final void rule__Repository__Group_5__3__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1639:1: ( ( ( rule__Repository__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1640:1: ( ( rule__Repository__Group_5_3__0 )* )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1640:1: ( ( rule__Repository__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1641:1: ( rule__Repository__Group_5_3__0 )*
-            {
-             before(grammarAccess.getRepositoryAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1642:1: ( rule__Repository__Group_5_3__0 )*
-            loop11:
-            do {
-                int alt11=2;
-                int LA11_0 = input.LA(1);
-
-                if ( (LA11_0==23) ) {
-                    alt11=1;
-                }
-
-
-                switch (alt11) {
-            	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1642:2: rule__Repository__Group_5_3__0
-            	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5_3__0_in_rule__Repository__Group_5__3__Impl3365);
-            	    rule__Repository__Group_5_3__0();
-
-            	    state._fsp--;
-
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop11;
-                }
-            } while (true);
-
-             after(grammarAccess.getRepositoryAccess().getGroup_5_3()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__3__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1652:1: rule__Repository__Group_5__4 : rule__Repository__Group_5__4__Impl ;
-    public final void rule__Repository__Group_5__4() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1656:1: ( rule__Repository__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1657:2: rule__Repository__Group_5__4__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5__4__Impl_in_rule__Repository__Group_5__43396);
-            rule__Repository__Group_5__4__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__4"
-
-
-    // $ANTLR start "rule__Repository__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1663:1: rule__Repository__Group_5__4__Impl : ( '}' ) ;
-    public final void rule__Repository__Group_5__4__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1667:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1668:1: ( '}' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1668:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1669:1: '}'
-            {
-             before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Repository__Group_5__4__Impl3424); 
-             after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5__4__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1692:1: rule__Repository__Group_5_3__0 : rule__Repository__Group_5_3__0__Impl rule__Repository__Group_5_3__1 ;
-    public final void rule__Repository__Group_5_3__0() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1696:1: ( rule__Repository__Group_5_3__0__Impl rule__Repository__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1697:2: rule__Repository__Group_5_3__0__Impl rule__Repository__Group_5_3__1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5_3__0__Impl_in_rule__Repository__Group_5_3__03465);
-            rule__Repository__Group_5_3__0__Impl();
-
-            state._fsp--;
-
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5_3__1_in_rule__Repository__Group_5_3__03468);
-            rule__Repository__Group_5_3__1();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5_3__0"
-
-
-    // $ANTLR start "rule__Repository__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1704:1: rule__Repository__Group_5_3__0__Impl : ( ',' ) ;
-    public final void rule__Repository__Group_5_3__0__Impl() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1708:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1709:1: ( ',' )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1709:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1710:1: ','
-            {
-             before(grammarAccess.getRepositoryAccess().getCommaKeyword_5_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Repository__Group_5_3__0__Impl3496); 
-             after(grammarAccess.getRepositoryAccess().getCommaKeyword_5_3_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5_3__0__Impl"
-
-
-    // $ANTLR start "rule__Repository__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1723:1: rule__Repository__Group_5_3__1 : rule__Repository__Group_5_3__1__Impl ;
-    public final void rule__Repository__Group_5_3__1() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1727:1: ( rule__Repository__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1728:2: rule__Repository__Group_5_3__1__Impl
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__Group_5_3__1__Impl_in_rule__Repository__Group_5_3__13527);
-            rule__Repository__Group_5_3__1__Impl();
-
-            state._fsp--;
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__Group_5_3__1"
-
-
-    // $ANTLR start "rule__Repository__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1734:1: rule__Repository__Group_5_3__1__Impl : ( ( rule__Repository__ComponentsAssignment_5_3_1 ) ) ;
-    public final void rule__Repository__Group_5_3__1__Impl() throws RecognitionException {
+    // $ANTLR start "rule__Repository__Group__4__Impl"
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1023:1: rule__Repository__Group__4__Impl : ( '}' ) ;
+    public final void rule__Repository__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1738:1: ( ( ( rule__Repository__ComponentsAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1739:1: ( ( rule__Repository__ComponentsAssignment_5_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1027:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1028:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1739:1: ( ( rule__Repository__ComponentsAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1740:1: ( rule__Repository__ComponentsAssignment_5_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1028:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1029:1: '}'
             {
-             before(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1741:1: ( rule__Repository__ComponentsAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1741:2: rule__Repository__ComponentsAssignment_5_3_1
-            {
-            pushFollow(FollowSets000.FOLLOW_rule__Repository__ComponentsAssignment_5_3_1_in_rule__Repository__Group_5_3__1__Impl3554);
-            rule__Repository__ComponentsAssignment_5_3_1();
-
-            state._fsp--;
-
-
-            }
-
-             after(grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1()); 
+             before(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4()); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__Repository__Group__4__Impl2179); 
+             after(grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4()); 
 
             }
 
@@ -4756,25 +3009,25 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
         }
         return ;
     }
-    // $ANTLR end "rule__Repository__Group_5_3__1__Impl"
+    // $ANTLR end "rule__Repository__Group__4__Impl"
 
 
     // $ANTLR start "rule__Interface__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1755:1: rule__Interface__Group__0 : rule__Interface__Group__0__Impl rule__Interface__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1052:1: rule__Interface__Group__0 : rule__Interface__Group__0__Impl rule__Interface__Group__1 ;
     public final void rule__Interface__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1759:1: ( rule__Interface__Group__0__Impl rule__Interface__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1760:2: rule__Interface__Group__0__Impl rule__Interface__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1056:1: ( rule__Interface__Group__0__Impl rule__Interface__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1057:2: rule__Interface__Group__0__Impl rule__Interface__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__0__Impl_in_rule__Interface__Group__03588);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__0__Impl_in_rule__Interface__Group__02220);
             rule__Interface__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__1_in_rule__Interface__Group__03591);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__1_in_rule__Interface__Group__02223);
             rule__Interface__Group__1();
 
             state._fsp--;
@@ -4798,20 +3051,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1767:1: rule__Interface__Group__0__Impl : ( 'Interface' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1064:1: rule__Interface__Group__0__Impl : ( 'Interface' ) ;
     public final void rule__Interface__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1771:1: ( ( 'Interface' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1772:1: ( 'Interface' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1068:1: ( ( 'Interface' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1069:1: ( 'Interface' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1772:1: ( 'Interface' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1773:1: 'Interface'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1069:1: ( 'Interface' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1070:1: 'Interface'
             {
              before(grammarAccess.getInterfaceAccess().getInterfaceKeyword_0()); 
-            match(input,26,FollowSets000.FOLLOW_26_in_rule__Interface__Group__0__Impl3619); 
+            match(input,22,FollowSets000.FOLLOW_22_in_rule__Interface__Group__0__Impl2251); 
              after(grammarAccess.getInterfaceAccess().getInterfaceKeyword_0()); 
 
             }
@@ -4835,21 +3088,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1786:1: rule__Interface__Group__1 : rule__Interface__Group__1__Impl rule__Interface__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1083:1: rule__Interface__Group__1 : rule__Interface__Group__1__Impl rule__Interface__Group__2 ;
     public final void rule__Interface__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1790:1: ( rule__Interface__Group__1__Impl rule__Interface__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1791:2: rule__Interface__Group__1__Impl rule__Interface__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1087:1: ( rule__Interface__Group__1__Impl rule__Interface__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1088:2: rule__Interface__Group__1__Impl rule__Interface__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__1__Impl_in_rule__Interface__Group__13650);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__1__Impl_in_rule__Interface__Group__12282);
             rule__Interface__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__2_in_rule__Interface__Group__13653);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__2_in_rule__Interface__Group__12285);
             rule__Interface__Group__2();
 
             state._fsp--;
@@ -4873,23 +3126,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1798:1: rule__Interface__Group__1__Impl : ( ( rule__Interface__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1095:1: rule__Interface__Group__1__Impl : ( ( rule__Interface__NameAssignment_1 ) ) ;
     public final void rule__Interface__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1802:1: ( ( ( rule__Interface__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1803:1: ( ( rule__Interface__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1099:1: ( ( ( rule__Interface__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1100:1: ( ( rule__Interface__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1803:1: ( ( rule__Interface__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1804:1: ( rule__Interface__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1100:1: ( ( rule__Interface__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1101:1: ( rule__Interface__NameAssignment_1 )
             {
              before(grammarAccess.getInterfaceAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1805:1: ( rule__Interface__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1805:2: rule__Interface__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1102:1: ( rule__Interface__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1102:2: rule__Interface__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__NameAssignment_1_in_rule__Interface__Group__1__Impl3680);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__NameAssignment_1_in_rule__Interface__Group__1__Impl2312);
             rule__Interface__NameAssignment_1();
 
             state._fsp--;
@@ -4920,21 +3173,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1815:1: rule__Interface__Group__2 : rule__Interface__Group__2__Impl rule__Interface__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1112:1: rule__Interface__Group__2 : rule__Interface__Group__2__Impl rule__Interface__Group__3 ;
     public final void rule__Interface__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1819:1: ( rule__Interface__Group__2__Impl rule__Interface__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1820:2: rule__Interface__Group__2__Impl rule__Interface__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1116:1: ( rule__Interface__Group__2__Impl rule__Interface__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1117:2: rule__Interface__Group__2__Impl rule__Interface__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__2__Impl_in_rule__Interface__Group__23710);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__2__Impl_in_rule__Interface__Group__22342);
             rule__Interface__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__3_in_rule__Interface__Group__23713);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__3_in_rule__Interface__Group__22345);
             rule__Interface__Group__3();
 
             state._fsp--;
@@ -4958,20 +3211,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1827:1: rule__Interface__Group__2__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1124:1: rule__Interface__Group__2__Impl : ( '{' ) ;
     public final void rule__Interface__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1831:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1832:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1128:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1129:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1832:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1833:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1129:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1130:1: '{'
             {
              before(grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Interface__Group__2__Impl3741); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__Interface__Group__2__Impl2373); 
              after(grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_2()); 
 
             }
@@ -4995,21 +3248,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1846:1: rule__Interface__Group__3 : rule__Interface__Group__3__Impl rule__Interface__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1143:1: rule__Interface__Group__3 : rule__Interface__Group__3__Impl rule__Interface__Group__4 ;
     public final void rule__Interface__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1850:1: ( rule__Interface__Group__3__Impl rule__Interface__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1851:2: rule__Interface__Group__3__Impl rule__Interface__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1147:1: ( rule__Interface__Group__3__Impl rule__Interface__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1148:2: rule__Interface__Group__3__Impl rule__Interface__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__3__Impl_in_rule__Interface__Group__33772);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__3__Impl_in_rule__Interface__Group__32404);
             rule__Interface__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__4_in_rule__Interface__Group__33775);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__4_in_rule__Interface__Group__32407);
             rule__Interface__Group__4();
 
             state._fsp--;
@@ -5033,31 +3286,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1858:1: rule__Interface__Group__3__Impl : ( ( rule__Interface__Group_3__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1155:1: rule__Interface__Group__3__Impl : ( ( rule__Interface__Group_3__0 )? ) ;
     public final void rule__Interface__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1862:1: ( ( ( rule__Interface__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1863:1: ( ( rule__Interface__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1159:1: ( ( ( rule__Interface__Group_3__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1160:1: ( ( rule__Interface__Group_3__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1863:1: ( ( rule__Interface__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1864:1: ( rule__Interface__Group_3__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1160:1: ( ( rule__Interface__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1161:1: ( rule__Interface__Group_3__0 )?
             {
              before(grammarAccess.getInterfaceAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1865:1: ( rule__Interface__Group_3__0 )?
-            int alt12=2;
-            int LA12_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1162:1: ( rule__Interface__Group_3__0 )?
+            int alt8=2;
+            int LA8_0 = input.LA(1);
 
-            if ( (LA12_0==27) ) {
-                alt12=1;
+            if ( (LA8_0==23) ) {
+                alt8=1;
             }
-            switch (alt12) {
+            switch (alt8) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1865:2: rule__Interface__Group_3__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1162:2: rule__Interface__Group_3__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__0_in_rule__Interface__Group__3__Impl3802);
+                    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__0_in_rule__Interface__Group__3__Impl2434);
                     rule__Interface__Group_3__0();
 
                     state._fsp--;
@@ -5091,21 +3344,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1875:1: rule__Interface__Group__4 : rule__Interface__Group__4__Impl rule__Interface__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1172:1: rule__Interface__Group__4 : rule__Interface__Group__4__Impl rule__Interface__Group__5 ;
     public final void rule__Interface__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1879:1: ( rule__Interface__Group__4__Impl rule__Interface__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1880:2: rule__Interface__Group__4__Impl rule__Interface__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1176:1: ( rule__Interface__Group__4__Impl rule__Interface__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1177:2: rule__Interface__Group__4__Impl rule__Interface__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__4__Impl_in_rule__Interface__Group__43833);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__4__Impl_in_rule__Interface__Group__42465);
             rule__Interface__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__5_in_rule__Interface__Group__43836);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__5_in_rule__Interface__Group__42468);
             rule__Interface__Group__5();
 
             state._fsp--;
@@ -5129,31 +3382,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1887:1: rule__Interface__Group__4__Impl : ( ( rule__Interface__Group_4__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1184:1: rule__Interface__Group__4__Impl : ( ( rule__Interface__Group_4__0 )? ) ;
     public final void rule__Interface__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1891:1: ( ( ( rule__Interface__Group_4__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1892:1: ( ( rule__Interface__Group_4__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1188:1: ( ( ( rule__Interface__Group_4__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1189:1: ( ( rule__Interface__Group_4__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1892:1: ( ( rule__Interface__Group_4__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1893:1: ( rule__Interface__Group_4__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1189:1: ( ( rule__Interface__Group_4__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1190:1: ( rule__Interface__Group_4__0 )?
             {
              before(grammarAccess.getInterfaceAccess().getGroup_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1894:1: ( rule__Interface__Group_4__0 )?
-            int alt13=2;
-            int LA13_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1191:1: ( rule__Interface__Group_4__0 )?
+            int alt9=2;
+            int LA9_0 = input.LA(1);
 
-            if ( (LA13_0==30) ) {
-                alt13=1;
+            if ( (LA9_0==27) ) {
+                alt9=1;
             }
-            switch (alt13) {
+            switch (alt9) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1894:2: rule__Interface__Group_4__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1191:2: rule__Interface__Group_4__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__0_in_rule__Interface__Group__4__Impl3863);
+                    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__0_in_rule__Interface__Group__4__Impl2495);
                     rule__Interface__Group_4__0();
 
                     state._fsp--;
@@ -5187,16 +3440,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1904:1: rule__Interface__Group__5 : rule__Interface__Group__5__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1201:1: rule__Interface__Group__5 : rule__Interface__Group__5__Impl ;
     public final void rule__Interface__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1908:1: ( rule__Interface__Group__5__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1909:2: rule__Interface__Group__5__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1205:1: ( rule__Interface__Group__5__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1206:2: rule__Interface__Group__5__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__5__Impl_in_rule__Interface__Group__53894);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group__5__Impl_in_rule__Interface__Group__52526);
             rule__Interface__Group__5__Impl();
 
             state._fsp--;
@@ -5220,20 +3473,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1915:1: rule__Interface__Group__5__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1212:1: rule__Interface__Group__5__Impl : ( '}' ) ;
     public final void rule__Interface__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1919:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1920:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1216:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1217:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1920:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1921:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1217:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1218:1: '}'
             {
              before(grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_5()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Interface__Group__5__Impl3922); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__Interface__Group__5__Impl2554); 
              after(grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_5()); 
 
             }
@@ -5257,21 +3510,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1946:1: rule__Interface__Group_3__0 : rule__Interface__Group_3__0__Impl rule__Interface__Group_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1243:1: rule__Interface__Group_3__0 : rule__Interface__Group_3__0__Impl rule__Interface__Group_3__1 ;
     public final void rule__Interface__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1950:1: ( rule__Interface__Group_3__0__Impl rule__Interface__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1951:2: rule__Interface__Group_3__0__Impl rule__Interface__Group_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1247:1: ( rule__Interface__Group_3__0__Impl rule__Interface__Group_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1248:2: rule__Interface__Group_3__0__Impl rule__Interface__Group_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__0__Impl_in_rule__Interface__Group_3__03965);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__0__Impl_in_rule__Interface__Group_3__02597);
             rule__Interface__Group_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__1_in_rule__Interface__Group_3__03968);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__1_in_rule__Interface__Group_3__02600);
             rule__Interface__Group_3__1();
 
             state._fsp--;
@@ -5295,20 +3548,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1958:1: rule__Interface__Group_3__0__Impl : ( 'parentInterfaces' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1255:1: rule__Interface__Group_3__0__Impl : ( 'parentInterfaces' ) ;
     public final void rule__Interface__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1962:1: ( ( 'parentInterfaces' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1963:1: ( 'parentInterfaces' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1259:1: ( ( 'parentInterfaces' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1260:1: ( 'parentInterfaces' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1963:1: ( 'parentInterfaces' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1964:1: 'parentInterfaces'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1260:1: ( 'parentInterfaces' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1261:1: 'parentInterfaces'
             {
              before(grammarAccess.getInterfaceAccess().getParentInterfacesKeyword_3_0()); 
-            match(input,27,FollowSets000.FOLLOW_27_in_rule__Interface__Group_3__0__Impl3996); 
+            match(input,23,FollowSets000.FOLLOW_23_in_rule__Interface__Group_3__0__Impl2628); 
              after(grammarAccess.getInterfaceAccess().getParentInterfacesKeyword_3_0()); 
 
             }
@@ -5332,21 +3585,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1977:1: rule__Interface__Group_3__1 : rule__Interface__Group_3__1__Impl rule__Interface__Group_3__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1274:1: rule__Interface__Group_3__1 : rule__Interface__Group_3__1__Impl rule__Interface__Group_3__2 ;
     public final void rule__Interface__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1981:1: ( rule__Interface__Group_3__1__Impl rule__Interface__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1982:2: rule__Interface__Group_3__1__Impl rule__Interface__Group_3__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1278:1: ( rule__Interface__Group_3__1__Impl rule__Interface__Group_3__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1279:2: rule__Interface__Group_3__1__Impl rule__Interface__Group_3__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__1__Impl_in_rule__Interface__Group_3__14027);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__1__Impl_in_rule__Interface__Group_3__12659);
             rule__Interface__Group_3__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__2_in_rule__Interface__Group_3__14030);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__2_in_rule__Interface__Group_3__12662);
             rule__Interface__Group_3__2();
 
             state._fsp--;
@@ -5370,20 +3623,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1989:1: rule__Interface__Group_3__1__Impl : ( '(' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1286:1: rule__Interface__Group_3__1__Impl : ( '(' ) ;
     public final void rule__Interface__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1993:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1994:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1290:1: ( ( '(' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1291:1: ( '(' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1994:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1995:1: '('
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1291:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1292:1: '('
             {
              before(grammarAccess.getInterfaceAccess().getLeftParenthesisKeyword_3_1()); 
-            match(input,28,FollowSets000.FOLLOW_28_in_rule__Interface__Group_3__1__Impl4058); 
+            match(input,24,FollowSets000.FOLLOW_24_in_rule__Interface__Group_3__1__Impl2690); 
              after(grammarAccess.getInterfaceAccess().getLeftParenthesisKeyword_3_1()); 
 
             }
@@ -5407,21 +3660,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2008:1: rule__Interface__Group_3__2 : rule__Interface__Group_3__2__Impl rule__Interface__Group_3__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1305:1: rule__Interface__Group_3__2 : rule__Interface__Group_3__2__Impl rule__Interface__Group_3__3 ;
     public final void rule__Interface__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2012:1: ( rule__Interface__Group_3__2__Impl rule__Interface__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2013:2: rule__Interface__Group_3__2__Impl rule__Interface__Group_3__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1309:1: ( rule__Interface__Group_3__2__Impl rule__Interface__Group_3__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1310:2: rule__Interface__Group_3__2__Impl rule__Interface__Group_3__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__2__Impl_in_rule__Interface__Group_3__24089);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__2__Impl_in_rule__Interface__Group_3__22721);
             rule__Interface__Group_3__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__3_in_rule__Interface__Group_3__24092);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__3_in_rule__Interface__Group_3__22724);
             rule__Interface__Group_3__3();
 
             state._fsp--;
@@ -5445,23 +3698,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2020:1: rule__Interface__Group_3__2__Impl : ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1317:1: rule__Interface__Group_3__2__Impl : ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) ) ;
     public final void rule__Interface__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2024:1: ( ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2025:1: ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1321:1: ( ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1322:1: ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2025:1: ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2026:1: ( rule__Interface__ParentInterfacesAssignment_3_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1322:1: ( ( rule__Interface__ParentInterfacesAssignment_3_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1323:1: ( rule__Interface__ParentInterfacesAssignment_3_2 )
             {
              before(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2027:1: ( rule__Interface__ParentInterfacesAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2027:2: rule__Interface__ParentInterfacesAssignment_3_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1324:1: ( rule__Interface__ParentInterfacesAssignment_3_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1324:2: rule__Interface__ParentInterfacesAssignment_3_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__ParentInterfacesAssignment_3_2_in_rule__Interface__Group_3__2__Impl4119);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__ParentInterfacesAssignment_3_2_in_rule__Interface__Group_3__2__Impl2751);
             rule__Interface__ParentInterfacesAssignment_3_2();
 
             state._fsp--;
@@ -5492,21 +3745,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2037:1: rule__Interface__Group_3__3 : rule__Interface__Group_3__3__Impl rule__Interface__Group_3__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1334:1: rule__Interface__Group_3__3 : rule__Interface__Group_3__3__Impl rule__Interface__Group_3__4 ;
     public final void rule__Interface__Group_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2041:1: ( rule__Interface__Group_3__3__Impl rule__Interface__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2042:2: rule__Interface__Group_3__3__Impl rule__Interface__Group_3__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1338:1: ( rule__Interface__Group_3__3__Impl rule__Interface__Group_3__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1339:2: rule__Interface__Group_3__3__Impl rule__Interface__Group_3__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__3__Impl_in_rule__Interface__Group_3__34149);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__3__Impl_in_rule__Interface__Group_3__32781);
             rule__Interface__Group_3__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__4_in_rule__Interface__Group_3__34152);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__4_in_rule__Interface__Group_3__32784);
             rule__Interface__Group_3__4();
 
             state._fsp--;
@@ -5530,35 +3783,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2049:1: rule__Interface__Group_3__3__Impl : ( ( rule__Interface__Group_3_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1346:1: rule__Interface__Group_3__3__Impl : ( ( rule__Interface__Group_3_3__0 )* ) ;
     public final void rule__Interface__Group_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2053:1: ( ( ( rule__Interface__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2054:1: ( ( rule__Interface__Group_3_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1350:1: ( ( ( rule__Interface__Group_3_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1351:1: ( ( rule__Interface__Group_3_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2054:1: ( ( rule__Interface__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2055:1: ( rule__Interface__Group_3_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1351:1: ( ( rule__Interface__Group_3_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1352:1: ( rule__Interface__Group_3_3__0 )*
             {
              before(grammarAccess.getInterfaceAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2056:1: ( rule__Interface__Group_3_3__0 )*
-            loop14:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1353:1: ( rule__Interface__Group_3_3__0 )*
+            loop10:
             do {
-                int alt14=2;
-                int LA14_0 = input.LA(1);
+                int alt10=2;
+                int LA10_0 = input.LA(1);
 
-                if ( (LA14_0==23) ) {
-                    alt14=1;
+                if ( (LA10_0==26) ) {
+                    alt10=1;
                 }
 
 
-                switch (alt14) {
+                switch (alt10) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2056:2: rule__Interface__Group_3_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1353:2: rule__Interface__Group_3_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__0_in_rule__Interface__Group_3__3__Impl4179);
+            	    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__0_in_rule__Interface__Group_3__3__Impl2811);
             	    rule__Interface__Group_3_3__0();
 
             	    state._fsp--;
@@ -5568,7 +3821,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop14;
+            	    break loop10;
                 }
             } while (true);
 
@@ -5595,16 +3848,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2066:1: rule__Interface__Group_3__4 : rule__Interface__Group_3__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1363:1: rule__Interface__Group_3__4 : rule__Interface__Group_3__4__Impl ;
     public final void rule__Interface__Group_3__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2070:1: ( rule__Interface__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2071:2: rule__Interface__Group_3__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1367:1: ( rule__Interface__Group_3__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1368:2: rule__Interface__Group_3__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__4__Impl_in_rule__Interface__Group_3__44210);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3__4__Impl_in_rule__Interface__Group_3__42842);
             rule__Interface__Group_3__4__Impl();
 
             state._fsp--;
@@ -5628,20 +3881,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2077:1: rule__Interface__Group_3__4__Impl : ( ')' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1374:1: rule__Interface__Group_3__4__Impl : ( ')' ) ;
     public final void rule__Interface__Group_3__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2081:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2082:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1378:1: ( ( ')' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1379:1: ( ')' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2082:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2083:1: ')'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1379:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1380:1: ')'
             {
              before(grammarAccess.getInterfaceAccess().getRightParenthesisKeyword_3_4()); 
-            match(input,29,FollowSets000.FOLLOW_29_in_rule__Interface__Group_3__4__Impl4238); 
+            match(input,25,FollowSets000.FOLLOW_25_in_rule__Interface__Group_3__4__Impl2870); 
              after(grammarAccess.getInterfaceAccess().getRightParenthesisKeyword_3_4()); 
 
             }
@@ -5665,21 +3918,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2106:1: rule__Interface__Group_3_3__0 : rule__Interface__Group_3_3__0__Impl rule__Interface__Group_3_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1403:1: rule__Interface__Group_3_3__0 : rule__Interface__Group_3_3__0__Impl rule__Interface__Group_3_3__1 ;
     public final void rule__Interface__Group_3_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2110:1: ( rule__Interface__Group_3_3__0__Impl rule__Interface__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2111:2: rule__Interface__Group_3_3__0__Impl rule__Interface__Group_3_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1407:1: ( rule__Interface__Group_3_3__0__Impl rule__Interface__Group_3_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1408:2: rule__Interface__Group_3_3__0__Impl rule__Interface__Group_3_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__0__Impl_in_rule__Interface__Group_3_3__04279);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__0__Impl_in_rule__Interface__Group_3_3__02911);
             rule__Interface__Group_3_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__1_in_rule__Interface__Group_3_3__04282);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__1_in_rule__Interface__Group_3_3__02914);
             rule__Interface__Group_3_3__1();
 
             state._fsp--;
@@ -5703,20 +3956,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2118:1: rule__Interface__Group_3_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1415:1: rule__Interface__Group_3_3__0__Impl : ( ',' ) ;
     public final void rule__Interface__Group_3_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2122:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2123:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1419:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1420:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2123:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2124:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1420:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1421:1: ','
             {
              before(grammarAccess.getInterfaceAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Interface__Group_3_3__0__Impl4310); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__Interface__Group_3_3__0__Impl2942); 
              after(grammarAccess.getInterfaceAccess().getCommaKeyword_3_3_0()); 
 
             }
@@ -5740,16 +3993,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2137:1: rule__Interface__Group_3_3__1 : rule__Interface__Group_3_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1434:1: rule__Interface__Group_3_3__1 : rule__Interface__Group_3_3__1__Impl ;
     public final void rule__Interface__Group_3_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2141:1: ( rule__Interface__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2142:2: rule__Interface__Group_3_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1438:1: ( rule__Interface__Group_3_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1439:2: rule__Interface__Group_3_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__1__Impl_in_rule__Interface__Group_3_3__14341);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_3_3__1__Impl_in_rule__Interface__Group_3_3__12973);
             rule__Interface__Group_3_3__1__Impl();
 
             state._fsp--;
@@ -5773,23 +4026,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2148:1: rule__Interface__Group_3_3__1__Impl : ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1445:1: rule__Interface__Group_3_3__1__Impl : ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) ) ;
     public final void rule__Interface__Group_3_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2152:1: ( ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2153:1: ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1449:1: ( ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1450:1: ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2153:1: ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2154:1: ( rule__Interface__ParentInterfacesAssignment_3_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1450:1: ( ( rule__Interface__ParentInterfacesAssignment_3_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1451:1: ( rule__Interface__ParentInterfacesAssignment_3_3_1 )
             {
              before(grammarAccess.getInterfaceAccess().getParentInterfacesAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2155:1: ( rule__Interface__ParentInterfacesAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2155:2: rule__Interface__ParentInterfacesAssignment_3_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1452:1: ( rule__Interface__ParentInterfacesAssignment_3_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1452:2: rule__Interface__ParentInterfacesAssignment_3_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__ParentInterfacesAssignment_3_3_1_in_rule__Interface__Group_3_3__1__Impl4368);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__ParentInterfacesAssignment_3_3_1_in_rule__Interface__Group_3_3__1__Impl3000);
             rule__Interface__ParentInterfacesAssignment_3_3_1();
 
             state._fsp--;
@@ -5820,21 +4073,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2169:1: rule__Interface__Group_4__0 : rule__Interface__Group_4__0__Impl rule__Interface__Group_4__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1466:1: rule__Interface__Group_4__0 : rule__Interface__Group_4__0__Impl rule__Interface__Group_4__1 ;
     public final void rule__Interface__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2173:1: ( rule__Interface__Group_4__0__Impl rule__Interface__Group_4__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2174:2: rule__Interface__Group_4__0__Impl rule__Interface__Group_4__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1470:1: ( rule__Interface__Group_4__0__Impl rule__Interface__Group_4__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1471:2: rule__Interface__Group_4__0__Impl rule__Interface__Group_4__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__0__Impl_in_rule__Interface__Group_4__04402);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__0__Impl_in_rule__Interface__Group_4__03034);
             rule__Interface__Group_4__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__1_in_rule__Interface__Group_4__04405);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__1_in_rule__Interface__Group_4__03037);
             rule__Interface__Group_4__1();
 
             state._fsp--;
@@ -5858,20 +4111,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2181:1: rule__Interface__Group_4__0__Impl : ( 'signatures' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1478:1: rule__Interface__Group_4__0__Impl : ( 'signatures' ) ;
     public final void rule__Interface__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2185:1: ( ( 'signatures' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2186:1: ( 'signatures' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1482:1: ( ( 'signatures' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1483:1: ( 'signatures' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2186:1: ( 'signatures' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2187:1: 'signatures'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1483:1: ( 'signatures' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1484:1: 'signatures'
             {
              before(grammarAccess.getInterfaceAccess().getSignaturesKeyword_4_0()); 
-            match(input,30,FollowSets000.FOLLOW_30_in_rule__Interface__Group_4__0__Impl4433); 
+            match(input,27,FollowSets000.FOLLOW_27_in_rule__Interface__Group_4__0__Impl3065); 
              after(grammarAccess.getInterfaceAccess().getSignaturesKeyword_4_0()); 
 
             }
@@ -5895,21 +4148,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2200:1: rule__Interface__Group_4__1 : rule__Interface__Group_4__1__Impl rule__Interface__Group_4__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1497:1: rule__Interface__Group_4__1 : rule__Interface__Group_4__1__Impl rule__Interface__Group_4__2 ;
     public final void rule__Interface__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2204:1: ( rule__Interface__Group_4__1__Impl rule__Interface__Group_4__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2205:2: rule__Interface__Group_4__1__Impl rule__Interface__Group_4__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1501:1: ( rule__Interface__Group_4__1__Impl rule__Interface__Group_4__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1502:2: rule__Interface__Group_4__1__Impl rule__Interface__Group_4__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__1__Impl_in_rule__Interface__Group_4__14464);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__1__Impl_in_rule__Interface__Group_4__13096);
             rule__Interface__Group_4__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__2_in_rule__Interface__Group_4__14467);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__2_in_rule__Interface__Group_4__13099);
             rule__Interface__Group_4__2();
 
             state._fsp--;
@@ -5933,20 +4186,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2212:1: rule__Interface__Group_4__1__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1509:1: rule__Interface__Group_4__1__Impl : ( '{' ) ;
     public final void rule__Interface__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2216:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2217:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1513:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1514:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2217:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2218:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1514:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1515:1: '{'
             {
              before(grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_4_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__Interface__Group_4__1__Impl4495); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__Interface__Group_4__1__Impl3127); 
              after(grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_4_1()); 
 
             }
@@ -5970,21 +4223,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2231:1: rule__Interface__Group_4__2 : rule__Interface__Group_4__2__Impl rule__Interface__Group_4__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1528:1: rule__Interface__Group_4__2 : rule__Interface__Group_4__2__Impl rule__Interface__Group_4__3 ;
     public final void rule__Interface__Group_4__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2235:1: ( rule__Interface__Group_4__2__Impl rule__Interface__Group_4__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2236:2: rule__Interface__Group_4__2__Impl rule__Interface__Group_4__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1532:1: ( rule__Interface__Group_4__2__Impl rule__Interface__Group_4__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1533:2: rule__Interface__Group_4__2__Impl rule__Interface__Group_4__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__2__Impl_in_rule__Interface__Group_4__24526);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__2__Impl_in_rule__Interface__Group_4__23158);
             rule__Interface__Group_4__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__3_in_rule__Interface__Group_4__24529);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__3_in_rule__Interface__Group_4__23161);
             rule__Interface__Group_4__3();
 
             state._fsp--;
@@ -6008,23 +4261,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2243:1: rule__Interface__Group_4__2__Impl : ( ( rule__Interface__SignaturesAssignment_4_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1540:1: rule__Interface__Group_4__2__Impl : ( ( rule__Interface__SignaturesAssignment_4_2 ) ) ;
     public final void rule__Interface__Group_4__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2247:1: ( ( ( rule__Interface__SignaturesAssignment_4_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2248:1: ( ( rule__Interface__SignaturesAssignment_4_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1544:1: ( ( ( rule__Interface__SignaturesAssignment_4_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1545:1: ( ( rule__Interface__SignaturesAssignment_4_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2248:1: ( ( rule__Interface__SignaturesAssignment_4_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2249:1: ( rule__Interface__SignaturesAssignment_4_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1545:1: ( ( rule__Interface__SignaturesAssignment_4_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1546:1: ( rule__Interface__SignaturesAssignment_4_2 )
             {
              before(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2250:1: ( rule__Interface__SignaturesAssignment_4_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2250:2: rule__Interface__SignaturesAssignment_4_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1547:1: ( rule__Interface__SignaturesAssignment_4_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1547:2: rule__Interface__SignaturesAssignment_4_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__SignaturesAssignment_4_2_in_rule__Interface__Group_4__2__Impl4556);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__SignaturesAssignment_4_2_in_rule__Interface__Group_4__2__Impl3188);
             rule__Interface__SignaturesAssignment_4_2();
 
             state._fsp--;
@@ -6055,21 +4308,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2260:1: rule__Interface__Group_4__3 : rule__Interface__Group_4__3__Impl rule__Interface__Group_4__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1557:1: rule__Interface__Group_4__3 : rule__Interface__Group_4__3__Impl rule__Interface__Group_4__4 ;
     public final void rule__Interface__Group_4__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2264:1: ( rule__Interface__Group_4__3__Impl rule__Interface__Group_4__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2265:2: rule__Interface__Group_4__3__Impl rule__Interface__Group_4__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1561:1: ( rule__Interface__Group_4__3__Impl rule__Interface__Group_4__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1562:2: rule__Interface__Group_4__3__Impl rule__Interface__Group_4__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__3__Impl_in_rule__Interface__Group_4__34586);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__3__Impl_in_rule__Interface__Group_4__33218);
             rule__Interface__Group_4__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__4_in_rule__Interface__Group_4__34589);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__4_in_rule__Interface__Group_4__33221);
             rule__Interface__Group_4__4();
 
             state._fsp--;
@@ -6093,35 +4346,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2272:1: rule__Interface__Group_4__3__Impl : ( ( rule__Interface__Group_4_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1569:1: rule__Interface__Group_4__3__Impl : ( ( rule__Interface__Group_4_3__0 )* ) ;
     public final void rule__Interface__Group_4__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2276:1: ( ( ( rule__Interface__Group_4_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2277:1: ( ( rule__Interface__Group_4_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1573:1: ( ( ( rule__Interface__Group_4_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1574:1: ( ( rule__Interface__Group_4_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2277:1: ( ( rule__Interface__Group_4_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2278:1: ( rule__Interface__Group_4_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1574:1: ( ( rule__Interface__Group_4_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1575:1: ( rule__Interface__Group_4_3__0 )*
             {
              before(grammarAccess.getInterfaceAccess().getGroup_4_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2279:1: ( rule__Interface__Group_4_3__0 )*
-            loop15:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1576:1: ( rule__Interface__Group_4_3__0 )*
+            loop11:
             do {
-                int alt15=2;
-                int LA15_0 = input.LA(1);
+                int alt11=2;
+                int LA11_0 = input.LA(1);
 
-                if ( (LA15_0==23) ) {
-                    alt15=1;
+                if ( (LA11_0==26) ) {
+                    alt11=1;
                 }
 
 
-                switch (alt15) {
+                switch (alt11) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2279:2: rule__Interface__Group_4_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1576:2: rule__Interface__Group_4_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_3__0_in_rule__Interface__Group_4__3__Impl4616);
+            	    pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_3__0_in_rule__Interface__Group_4__3__Impl3248);
             	    rule__Interface__Group_4_3__0();
 
             	    state._fsp--;
@@ -6131,7 +4384,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop15;
+            	    break loop11;
                 }
             } while (true);
 
@@ -6158,16 +4411,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2289:1: rule__Interface__Group_4__4 : rule__Interface__Group_4__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1586:1: rule__Interface__Group_4__4 : rule__Interface__Group_4__4__Impl ;
     public final void rule__Interface__Group_4__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2293:1: ( rule__Interface__Group_4__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2294:2: rule__Interface__Group_4__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1590:1: ( rule__Interface__Group_4__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1591:2: rule__Interface__Group_4__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__4__Impl_in_rule__Interface__Group_4__44647);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4__4__Impl_in_rule__Interface__Group_4__43279);
             rule__Interface__Group_4__4__Impl();
 
             state._fsp--;
@@ -6191,20 +4444,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2300:1: rule__Interface__Group_4__4__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1597:1: rule__Interface__Group_4__4__Impl : ( '}' ) ;
     public final void rule__Interface__Group_4__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2304:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2305:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1601:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1602:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2305:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2306:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1602:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1603:1: '}'
             {
              before(grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_4_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__Interface__Group_4__4__Impl4675); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__Interface__Group_4__4__Impl3307); 
              after(grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_4_4()); 
 
             }
@@ -6228,21 +4481,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2329:1: rule__Interface__Group_4_3__0 : rule__Interface__Group_4_3__0__Impl rule__Interface__Group_4_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1626:1: rule__Interface__Group_4_3__0 : rule__Interface__Group_4_3__0__Impl rule__Interface__Group_4_3__1 ;
     public final void rule__Interface__Group_4_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2333:1: ( rule__Interface__Group_4_3__0__Impl rule__Interface__Group_4_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2334:2: rule__Interface__Group_4_3__0__Impl rule__Interface__Group_4_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1630:1: ( rule__Interface__Group_4_3__0__Impl rule__Interface__Group_4_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1631:2: rule__Interface__Group_4_3__0__Impl rule__Interface__Group_4_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_3__0__Impl_in_rule__Interface__Group_4_3__04716);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_3__0__Impl_in_rule__Interface__Group_4_3__03348);
             rule__Interface__Group_4_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_3__1_in_rule__Interface__Group_4_3__04719);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_3__1_in_rule__Interface__Group_4_3__03351);
             rule__Interface__Group_4_3__1();
 
             state._fsp--;
@@ -6266,20 +4519,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2341:1: rule__Interface__Group_4_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1638:1: rule__Interface__Group_4_3__0__Impl : ( ',' ) ;
     public final void rule__Interface__Group_4_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2345:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2346:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1642:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1643:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2346:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2347:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1643:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1644:1: ','
             {
              before(grammarAccess.getInterfaceAccess().getCommaKeyword_4_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Interface__Group_4_3__0__Impl4747); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__Interface__Group_4_3__0__Impl3379); 
              after(grammarAccess.getInterfaceAccess().getCommaKeyword_4_3_0()); 
 
             }
@@ -6303,16 +4556,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2360:1: rule__Interface__Group_4_3__1 : rule__Interface__Group_4_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1657:1: rule__Interface__Group_4_3__1 : rule__Interface__Group_4_3__1__Impl ;
     public final void rule__Interface__Group_4_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2364:1: ( rule__Interface__Group_4_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2365:2: rule__Interface__Group_4_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1661:1: ( rule__Interface__Group_4_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1662:2: rule__Interface__Group_4_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_3__1__Impl_in_rule__Interface__Group_4_3__14778);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__Group_4_3__1__Impl_in_rule__Interface__Group_4_3__13410);
             rule__Interface__Group_4_3__1__Impl();
 
             state._fsp--;
@@ -6336,23 +4589,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__Group_4_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2371:1: rule__Interface__Group_4_3__1__Impl : ( ( rule__Interface__SignaturesAssignment_4_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1668:1: rule__Interface__Group_4_3__1__Impl : ( ( rule__Interface__SignaturesAssignment_4_3_1 ) ) ;
     public final void rule__Interface__Group_4_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2375:1: ( ( ( rule__Interface__SignaturesAssignment_4_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2376:1: ( ( rule__Interface__SignaturesAssignment_4_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1672:1: ( ( ( rule__Interface__SignaturesAssignment_4_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1673:1: ( ( rule__Interface__SignaturesAssignment_4_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2376:1: ( ( rule__Interface__SignaturesAssignment_4_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2377:1: ( rule__Interface__SignaturesAssignment_4_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1673:1: ( ( rule__Interface__SignaturesAssignment_4_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1674:1: ( rule__Interface__SignaturesAssignment_4_3_1 )
             {
              before(grammarAccess.getInterfaceAccess().getSignaturesAssignment_4_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2378:1: ( rule__Interface__SignaturesAssignment_4_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2378:2: rule__Interface__SignaturesAssignment_4_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1675:1: ( rule__Interface__SignaturesAssignment_4_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1675:2: rule__Interface__SignaturesAssignment_4_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Interface__SignaturesAssignment_4_3_1_in_rule__Interface__Group_4_3__1__Impl4805);
+            pushFollow(FollowSets000.FOLLOW_rule__Interface__SignaturesAssignment_4_3_1_in_rule__Interface__Group_4_3__1__Impl3437);
             rule__Interface__SignaturesAssignment_4_3_1();
 
             state._fsp--;
@@ -6383,21 +4636,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2392:1: rule__RepositoryComponent_Impl__Group__0 : rule__RepositoryComponent_Impl__Group__0__Impl rule__RepositoryComponent_Impl__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1689:1: rule__RepositoryComponent_Impl__Group__0 : rule__RepositoryComponent_Impl__Group__0__Impl rule__RepositoryComponent_Impl__Group__1 ;
     public final void rule__RepositoryComponent_Impl__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2396:1: ( rule__RepositoryComponent_Impl__Group__0__Impl rule__RepositoryComponent_Impl__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2397:2: rule__RepositoryComponent_Impl__Group__0__Impl rule__RepositoryComponent_Impl__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1693:1: ( rule__RepositoryComponent_Impl__Group__0__Impl rule__RepositoryComponent_Impl__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1694:2: rule__RepositoryComponent_Impl__Group__0__Impl rule__RepositoryComponent_Impl__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__0__Impl_in_rule__RepositoryComponent_Impl__Group__04839);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__0__Impl_in_rule__RepositoryComponent_Impl__Group__03471);
             rule__RepositoryComponent_Impl__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__1_in_rule__RepositoryComponent_Impl__Group__04842);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__1_in_rule__RepositoryComponent_Impl__Group__03474);
             rule__RepositoryComponent_Impl__Group__1();
 
             state._fsp--;
@@ -6421,20 +4674,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2404:1: rule__RepositoryComponent_Impl__Group__0__Impl : ( 'RepositoryComponent' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1701:1: rule__RepositoryComponent_Impl__Group__0__Impl : ( 'RepositoryComponent' ) ;
     public final void rule__RepositoryComponent_Impl__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2408:1: ( ( 'RepositoryComponent' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2409:1: ( 'RepositoryComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1705:1: ( ( 'RepositoryComponent' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1706:1: ( 'RepositoryComponent' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2409:1: ( 'RepositoryComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2410:1: 'RepositoryComponent'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1706:1: ( 'RepositoryComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1707:1: 'RepositoryComponent'
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRepositoryComponentKeyword_0()); 
-            match(input,31,FollowSets000.FOLLOW_31_in_rule__RepositoryComponent_Impl__Group__0__Impl4870); 
+            match(input,28,FollowSets000.FOLLOW_28_in_rule__RepositoryComponent_Impl__Group__0__Impl3502); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getRepositoryComponentKeyword_0()); 
 
             }
@@ -6458,21 +4711,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2423:1: rule__RepositoryComponent_Impl__Group__1 : rule__RepositoryComponent_Impl__Group__1__Impl rule__RepositoryComponent_Impl__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1720:1: rule__RepositoryComponent_Impl__Group__1 : rule__RepositoryComponent_Impl__Group__1__Impl rule__RepositoryComponent_Impl__Group__2 ;
     public final void rule__RepositoryComponent_Impl__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2427:1: ( rule__RepositoryComponent_Impl__Group__1__Impl rule__RepositoryComponent_Impl__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2428:2: rule__RepositoryComponent_Impl__Group__1__Impl rule__RepositoryComponent_Impl__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1724:1: ( rule__RepositoryComponent_Impl__Group__1__Impl rule__RepositoryComponent_Impl__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1725:2: rule__RepositoryComponent_Impl__Group__1__Impl rule__RepositoryComponent_Impl__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__1__Impl_in_rule__RepositoryComponent_Impl__Group__14901);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__1__Impl_in_rule__RepositoryComponent_Impl__Group__13533);
             rule__RepositoryComponent_Impl__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__2_in_rule__RepositoryComponent_Impl__Group__14904);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__2_in_rule__RepositoryComponent_Impl__Group__13536);
             rule__RepositoryComponent_Impl__Group__2();
 
             state._fsp--;
@@ -6496,23 +4749,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2435:1: rule__RepositoryComponent_Impl__Group__1__Impl : ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1732:1: rule__RepositoryComponent_Impl__Group__1__Impl : ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) ) ;
     public final void rule__RepositoryComponent_Impl__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2439:1: ( ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2440:1: ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1736:1: ( ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1737:1: ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2440:1: ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2441:1: ( rule__RepositoryComponent_Impl__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1737:1: ( ( rule__RepositoryComponent_Impl__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1738:1: ( rule__RepositoryComponent_Impl__NameAssignment_1 )
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2442:1: ( rule__RepositoryComponent_Impl__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2442:2: rule__RepositoryComponent_Impl__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1739:1: ( rule__RepositoryComponent_Impl__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1739:2: rule__RepositoryComponent_Impl__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__NameAssignment_1_in_rule__RepositoryComponent_Impl__Group__1__Impl4931);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__NameAssignment_1_in_rule__RepositoryComponent_Impl__Group__1__Impl3563);
             rule__RepositoryComponent_Impl__NameAssignment_1();
 
             state._fsp--;
@@ -6543,21 +4796,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2452:1: rule__RepositoryComponent_Impl__Group__2 : rule__RepositoryComponent_Impl__Group__2__Impl rule__RepositoryComponent_Impl__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1749:1: rule__RepositoryComponent_Impl__Group__2 : rule__RepositoryComponent_Impl__Group__2__Impl rule__RepositoryComponent_Impl__Group__3 ;
     public final void rule__RepositoryComponent_Impl__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2456:1: ( rule__RepositoryComponent_Impl__Group__2__Impl rule__RepositoryComponent_Impl__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2457:2: rule__RepositoryComponent_Impl__Group__2__Impl rule__RepositoryComponent_Impl__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1753:1: ( rule__RepositoryComponent_Impl__Group__2__Impl rule__RepositoryComponent_Impl__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1754:2: rule__RepositoryComponent_Impl__Group__2__Impl rule__RepositoryComponent_Impl__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__2__Impl_in_rule__RepositoryComponent_Impl__Group__24961);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__2__Impl_in_rule__RepositoryComponent_Impl__Group__23593);
             rule__RepositoryComponent_Impl__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__3_in_rule__RepositoryComponent_Impl__Group__24964);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__3_in_rule__RepositoryComponent_Impl__Group__23596);
             rule__RepositoryComponent_Impl__Group__3();
 
             state._fsp--;
@@ -6581,20 +4834,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2464:1: rule__RepositoryComponent_Impl__Group__2__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1761:1: rule__RepositoryComponent_Impl__Group__2__Impl : ( '{' ) ;
     public final void rule__RepositoryComponent_Impl__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2468:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2469:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1765:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1766:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2469:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2470:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1766:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1767:1: '{'
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__RepositoryComponent_Impl__Group__2__Impl4992); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__RepositoryComponent_Impl__Group__2__Impl3624); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_2()); 
 
             }
@@ -6618,21 +4871,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2483:1: rule__RepositoryComponent_Impl__Group__3 : rule__RepositoryComponent_Impl__Group__3__Impl rule__RepositoryComponent_Impl__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1780:1: rule__RepositoryComponent_Impl__Group__3 : rule__RepositoryComponent_Impl__Group__3__Impl rule__RepositoryComponent_Impl__Group__4 ;
     public final void rule__RepositoryComponent_Impl__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2487:1: ( rule__RepositoryComponent_Impl__Group__3__Impl rule__RepositoryComponent_Impl__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2488:2: rule__RepositoryComponent_Impl__Group__3__Impl rule__RepositoryComponent_Impl__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1784:1: ( rule__RepositoryComponent_Impl__Group__3__Impl rule__RepositoryComponent_Impl__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1785:2: rule__RepositoryComponent_Impl__Group__3__Impl rule__RepositoryComponent_Impl__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__3__Impl_in_rule__RepositoryComponent_Impl__Group__35023);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__3__Impl_in_rule__RepositoryComponent_Impl__Group__33655);
             rule__RepositoryComponent_Impl__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__4_in_rule__RepositoryComponent_Impl__Group__35026);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__4_in_rule__RepositoryComponent_Impl__Group__33658);
             rule__RepositoryComponent_Impl__Group__4();
 
             state._fsp--;
@@ -6656,31 +4909,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2495:1: rule__RepositoryComponent_Impl__Group__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_3__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1792:1: rule__RepositoryComponent_Impl__Group__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_3__0 )? ) ;
     public final void rule__RepositoryComponent_Impl__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2499:1: ( ( ( rule__RepositoryComponent_Impl__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2500:1: ( ( rule__RepositoryComponent_Impl__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1796:1: ( ( ( rule__RepositoryComponent_Impl__Group_3__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1797:1: ( ( rule__RepositoryComponent_Impl__Group_3__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2500:1: ( ( rule__RepositoryComponent_Impl__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2501:1: ( rule__RepositoryComponent_Impl__Group_3__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1797:1: ( ( rule__RepositoryComponent_Impl__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1798:1: ( rule__RepositoryComponent_Impl__Group_3__0 )?
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2502:1: ( rule__RepositoryComponent_Impl__Group_3__0 )?
-            int alt16=2;
-            int LA16_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1799:1: ( rule__RepositoryComponent_Impl__Group_3__0 )?
+            int alt12=2;
+            int LA12_0 = input.LA(1);
 
-            if ( (LA16_0==32) ) {
-                alt16=1;
+            if ( (LA12_0==29) ) {
+                alt12=1;
             }
-            switch (alt16) {
+            switch (alt12) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2502:2: rule__RepositoryComponent_Impl__Group_3__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1799:2: rule__RepositoryComponent_Impl__Group_3__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__0_in_rule__RepositoryComponent_Impl__Group__3__Impl5053);
+                    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__0_in_rule__RepositoryComponent_Impl__Group__3__Impl3685);
                     rule__RepositoryComponent_Impl__Group_3__0();
 
                     state._fsp--;
@@ -6714,21 +4967,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2512:1: rule__RepositoryComponent_Impl__Group__4 : rule__RepositoryComponent_Impl__Group__4__Impl rule__RepositoryComponent_Impl__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1809:1: rule__RepositoryComponent_Impl__Group__4 : rule__RepositoryComponent_Impl__Group__4__Impl rule__RepositoryComponent_Impl__Group__5 ;
     public final void rule__RepositoryComponent_Impl__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2516:1: ( rule__RepositoryComponent_Impl__Group__4__Impl rule__RepositoryComponent_Impl__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2517:2: rule__RepositoryComponent_Impl__Group__4__Impl rule__RepositoryComponent_Impl__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1813:1: ( rule__RepositoryComponent_Impl__Group__4__Impl rule__RepositoryComponent_Impl__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1814:2: rule__RepositoryComponent_Impl__Group__4__Impl rule__RepositoryComponent_Impl__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__4__Impl_in_rule__RepositoryComponent_Impl__Group__45084);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__4__Impl_in_rule__RepositoryComponent_Impl__Group__43716);
             rule__RepositoryComponent_Impl__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__5_in_rule__RepositoryComponent_Impl__Group__45087);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__5_in_rule__RepositoryComponent_Impl__Group__43719);
             rule__RepositoryComponent_Impl__Group__5();
 
             state._fsp--;
@@ -6752,31 +5005,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2524:1: rule__RepositoryComponent_Impl__Group__4__Impl : ( ( rule__RepositoryComponent_Impl__Group_4__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1821:1: rule__RepositoryComponent_Impl__Group__4__Impl : ( ( rule__RepositoryComponent_Impl__Group_4__0 )? ) ;
     public final void rule__RepositoryComponent_Impl__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2528:1: ( ( ( rule__RepositoryComponent_Impl__Group_4__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2529:1: ( ( rule__RepositoryComponent_Impl__Group_4__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1825:1: ( ( ( rule__RepositoryComponent_Impl__Group_4__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1826:1: ( ( rule__RepositoryComponent_Impl__Group_4__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2529:1: ( ( rule__RepositoryComponent_Impl__Group_4__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2530:1: ( rule__RepositoryComponent_Impl__Group_4__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1826:1: ( ( rule__RepositoryComponent_Impl__Group_4__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1827:1: ( rule__RepositoryComponent_Impl__Group_4__0 )?
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2531:1: ( rule__RepositoryComponent_Impl__Group_4__0 )?
-            int alt17=2;
-            int LA17_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1828:1: ( rule__RepositoryComponent_Impl__Group_4__0 )?
+            int alt13=2;
+            int LA13_0 = input.LA(1);
 
-            if ( (LA17_0==33) ) {
-                alt17=1;
+            if ( (LA13_0==30) ) {
+                alt13=1;
             }
-            switch (alt17) {
+            switch (alt13) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2531:2: rule__RepositoryComponent_Impl__Group_4__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1828:2: rule__RepositoryComponent_Impl__Group_4__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__0_in_rule__RepositoryComponent_Impl__Group__4__Impl5114);
+                    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__0_in_rule__RepositoryComponent_Impl__Group__4__Impl3746);
                     rule__RepositoryComponent_Impl__Group_4__0();
 
                     state._fsp--;
@@ -6810,21 +5063,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2541:1: rule__RepositoryComponent_Impl__Group__5 : rule__RepositoryComponent_Impl__Group__5__Impl rule__RepositoryComponent_Impl__Group__6 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1838:1: rule__RepositoryComponent_Impl__Group__5 : rule__RepositoryComponent_Impl__Group__5__Impl rule__RepositoryComponent_Impl__Group__6 ;
     public final void rule__RepositoryComponent_Impl__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2545:1: ( rule__RepositoryComponent_Impl__Group__5__Impl rule__RepositoryComponent_Impl__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2546:2: rule__RepositoryComponent_Impl__Group__5__Impl rule__RepositoryComponent_Impl__Group__6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1842:1: ( rule__RepositoryComponent_Impl__Group__5__Impl rule__RepositoryComponent_Impl__Group__6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1843:2: rule__RepositoryComponent_Impl__Group__5__Impl rule__RepositoryComponent_Impl__Group__6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__5__Impl_in_rule__RepositoryComponent_Impl__Group__55145);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__5__Impl_in_rule__RepositoryComponent_Impl__Group__53777);
             rule__RepositoryComponent_Impl__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__6_in_rule__RepositoryComponent_Impl__Group__55148);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__6_in_rule__RepositoryComponent_Impl__Group__53780);
             rule__RepositoryComponent_Impl__Group__6();
 
             state._fsp--;
@@ -6848,31 +5101,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2553:1: rule__RepositoryComponent_Impl__Group__5__Impl : ( ( rule__RepositoryComponent_Impl__Group_5__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1850:1: rule__RepositoryComponent_Impl__Group__5__Impl : ( ( rule__RepositoryComponent_Impl__Group_5__0 )? ) ;
     public final void rule__RepositoryComponent_Impl__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2557:1: ( ( ( rule__RepositoryComponent_Impl__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2558:1: ( ( rule__RepositoryComponent_Impl__Group_5__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1854:1: ( ( ( rule__RepositoryComponent_Impl__Group_5__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1855:1: ( ( rule__RepositoryComponent_Impl__Group_5__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2558:1: ( ( rule__RepositoryComponent_Impl__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2559:1: ( rule__RepositoryComponent_Impl__Group_5__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1855:1: ( ( rule__RepositoryComponent_Impl__Group_5__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1856:1: ( rule__RepositoryComponent_Impl__Group_5__0 )?
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2560:1: ( rule__RepositoryComponent_Impl__Group_5__0 )?
-            int alt18=2;
-            int LA18_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1857:1: ( rule__RepositoryComponent_Impl__Group_5__0 )?
+            int alt14=2;
+            int LA14_0 = input.LA(1);
 
-            if ( (LA18_0==34) ) {
-                alt18=1;
+            if ( (LA14_0==31) ) {
+                alt14=1;
             }
-            switch (alt18) {
+            switch (alt14) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2560:2: rule__RepositoryComponent_Impl__Group_5__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1857:2: rule__RepositoryComponent_Impl__Group_5__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__0_in_rule__RepositoryComponent_Impl__Group__5__Impl5175);
+                    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__0_in_rule__RepositoryComponent_Impl__Group__5__Impl3807);
                     rule__RepositoryComponent_Impl__Group_5__0();
 
                     state._fsp--;
@@ -6906,16 +5159,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2570:1: rule__RepositoryComponent_Impl__Group__6 : rule__RepositoryComponent_Impl__Group__6__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1867:1: rule__RepositoryComponent_Impl__Group__6 : rule__RepositoryComponent_Impl__Group__6__Impl ;
     public final void rule__RepositoryComponent_Impl__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2574:1: ( rule__RepositoryComponent_Impl__Group__6__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2575:2: rule__RepositoryComponent_Impl__Group__6__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1871:1: ( rule__RepositoryComponent_Impl__Group__6__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1872:2: rule__RepositoryComponent_Impl__Group__6__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__6__Impl_in_rule__RepositoryComponent_Impl__Group__65206);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group__6__Impl_in_rule__RepositoryComponent_Impl__Group__63838);
             rule__RepositoryComponent_Impl__Group__6__Impl();
 
             state._fsp--;
@@ -6939,20 +5192,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2581:1: rule__RepositoryComponent_Impl__Group__6__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1878:1: rule__RepositoryComponent_Impl__Group__6__Impl : ( '}' ) ;
     public final void rule__RepositoryComponent_Impl__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2585:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2586:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1882:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1883:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2586:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2587:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1883:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1884:1: '}'
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_6()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__RepositoryComponent_Impl__Group__6__Impl5234); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__RepositoryComponent_Impl__Group__6__Impl3866); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_6()); 
 
             }
@@ -6976,21 +5229,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2614:1: rule__RepositoryComponent_Impl__Group_3__0 : rule__RepositoryComponent_Impl__Group_3__0__Impl rule__RepositoryComponent_Impl__Group_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1911:1: rule__RepositoryComponent_Impl__Group_3__0 : rule__RepositoryComponent_Impl__Group_3__0__Impl rule__RepositoryComponent_Impl__Group_3__1 ;
     public final void rule__RepositoryComponent_Impl__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2618:1: ( rule__RepositoryComponent_Impl__Group_3__0__Impl rule__RepositoryComponent_Impl__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2619:2: rule__RepositoryComponent_Impl__Group_3__0__Impl rule__RepositoryComponent_Impl__Group_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1915:1: ( rule__RepositoryComponent_Impl__Group_3__0__Impl rule__RepositoryComponent_Impl__Group_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1916:2: rule__RepositoryComponent_Impl__Group_3__0__Impl rule__RepositoryComponent_Impl__Group_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3__05279);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3__03911);
             rule__RepositoryComponent_Impl__Group_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__1_in_rule__RepositoryComponent_Impl__Group_3__05282);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__1_in_rule__RepositoryComponent_Impl__Group_3__03914);
             rule__RepositoryComponent_Impl__Group_3__1();
 
             state._fsp--;
@@ -7014,20 +5267,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2626:1: rule__RepositoryComponent_Impl__Group_3__0__Impl : ( 'relationship' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1923:1: rule__RepositoryComponent_Impl__Group_3__0__Impl : ( 'relationship' ) ;
     public final void rule__RepositoryComponent_Impl__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2630:1: ( ( 'relationship' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2631:1: ( 'relationship' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1927:1: ( ( 'relationship' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1928:1: ( 'relationship' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2631:1: ( 'relationship' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2632:1: 'relationship'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1928:1: ( 'relationship' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1929:1: 'relationship'
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipKeyword_3_0()); 
-            match(input,32,FollowSets000.FOLLOW_32_in_rule__RepositoryComponent_Impl__Group_3__0__Impl5310); 
+            match(input,29,FollowSets000.FOLLOW_29_in_rule__RepositoryComponent_Impl__Group_3__0__Impl3942); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipKeyword_3_0()); 
 
             }
@@ -7051,21 +5304,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2645:1: rule__RepositoryComponent_Impl__Group_3__1 : rule__RepositoryComponent_Impl__Group_3__1__Impl rule__RepositoryComponent_Impl__Group_3__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1942:1: rule__RepositoryComponent_Impl__Group_3__1 : rule__RepositoryComponent_Impl__Group_3__1__Impl rule__RepositoryComponent_Impl__Group_3__2 ;
     public final void rule__RepositoryComponent_Impl__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2649:1: ( rule__RepositoryComponent_Impl__Group_3__1__Impl rule__RepositoryComponent_Impl__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2650:2: rule__RepositoryComponent_Impl__Group_3__1__Impl rule__RepositoryComponent_Impl__Group_3__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1946:1: ( rule__RepositoryComponent_Impl__Group_3__1__Impl rule__RepositoryComponent_Impl__Group_3__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1947:2: rule__RepositoryComponent_Impl__Group_3__1__Impl rule__RepositoryComponent_Impl__Group_3__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3__15341);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3__13973);
             rule__RepositoryComponent_Impl__Group_3__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__2_in_rule__RepositoryComponent_Impl__Group_3__15344);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__2_in_rule__RepositoryComponent_Impl__Group_3__13976);
             rule__RepositoryComponent_Impl__Group_3__2();
 
             state._fsp--;
@@ -7089,20 +5342,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2657:1: rule__RepositoryComponent_Impl__Group_3__1__Impl : ( '(' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1954:1: rule__RepositoryComponent_Impl__Group_3__1__Impl : ( '(' ) ;
     public final void rule__RepositoryComponent_Impl__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2661:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2662:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1958:1: ( ( '(' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1959:1: ( '(' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2662:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2663:1: '('
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1959:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1960:1: '('
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftParenthesisKeyword_3_1()); 
-            match(input,28,FollowSets000.FOLLOW_28_in_rule__RepositoryComponent_Impl__Group_3__1__Impl5372); 
+            match(input,24,FollowSets000.FOLLOW_24_in_rule__RepositoryComponent_Impl__Group_3__1__Impl4004); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftParenthesisKeyword_3_1()); 
 
             }
@@ -7126,21 +5379,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2676:1: rule__RepositoryComponent_Impl__Group_3__2 : rule__RepositoryComponent_Impl__Group_3__2__Impl rule__RepositoryComponent_Impl__Group_3__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1973:1: rule__RepositoryComponent_Impl__Group_3__2 : rule__RepositoryComponent_Impl__Group_3__2__Impl rule__RepositoryComponent_Impl__Group_3__3 ;
     public final void rule__RepositoryComponent_Impl__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2680:1: ( rule__RepositoryComponent_Impl__Group_3__2__Impl rule__RepositoryComponent_Impl__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2681:2: rule__RepositoryComponent_Impl__Group_3__2__Impl rule__RepositoryComponent_Impl__Group_3__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1977:1: ( rule__RepositoryComponent_Impl__Group_3__2__Impl rule__RepositoryComponent_Impl__Group_3__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1978:2: rule__RepositoryComponent_Impl__Group_3__2__Impl rule__RepositoryComponent_Impl__Group_3__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__2__Impl_in_rule__RepositoryComponent_Impl__Group_3__25403);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__2__Impl_in_rule__RepositoryComponent_Impl__Group_3__24035);
             rule__RepositoryComponent_Impl__Group_3__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__3_in_rule__RepositoryComponent_Impl__Group_3__25406);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__3_in_rule__RepositoryComponent_Impl__Group_3__24038);
             rule__RepositoryComponent_Impl__Group_3__3();
 
             state._fsp--;
@@ -7164,23 +5417,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2688:1: rule__RepositoryComponent_Impl__Group_3__2__Impl : ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1985:1: rule__RepositoryComponent_Impl__Group_3__2__Impl : ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) ) ;
     public final void rule__RepositoryComponent_Impl__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2692:1: ( ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2693:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1989:1: ( ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1990:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2693:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2694:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1990:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1991:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 )
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2695:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2695:2: rule__RepositoryComponent_Impl__RelationshipAssignment_3_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1992:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:1992:2: rule__RepositoryComponent_Impl__RelationshipAssignment_3_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_2_in_rule__RepositoryComponent_Impl__Group_3__2__Impl5433);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_2_in_rule__RepositoryComponent_Impl__Group_3__2__Impl4065);
             rule__RepositoryComponent_Impl__RelationshipAssignment_3_2();
 
             state._fsp--;
@@ -7211,21 +5464,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2705:1: rule__RepositoryComponent_Impl__Group_3__3 : rule__RepositoryComponent_Impl__Group_3__3__Impl rule__RepositoryComponent_Impl__Group_3__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2002:1: rule__RepositoryComponent_Impl__Group_3__3 : rule__RepositoryComponent_Impl__Group_3__3__Impl rule__RepositoryComponent_Impl__Group_3__4 ;
     public final void rule__RepositoryComponent_Impl__Group_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2709:1: ( rule__RepositoryComponent_Impl__Group_3__3__Impl rule__RepositoryComponent_Impl__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2710:2: rule__RepositoryComponent_Impl__Group_3__3__Impl rule__RepositoryComponent_Impl__Group_3__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2006:1: ( rule__RepositoryComponent_Impl__Group_3__3__Impl rule__RepositoryComponent_Impl__Group_3__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2007:2: rule__RepositoryComponent_Impl__Group_3__3__Impl rule__RepositoryComponent_Impl__Group_3__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__3__Impl_in_rule__RepositoryComponent_Impl__Group_3__35463);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__3__Impl_in_rule__RepositoryComponent_Impl__Group_3__34095);
             rule__RepositoryComponent_Impl__Group_3__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__4_in_rule__RepositoryComponent_Impl__Group_3__35466);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__4_in_rule__RepositoryComponent_Impl__Group_3__34098);
             rule__RepositoryComponent_Impl__Group_3__4();
 
             state._fsp--;
@@ -7249,35 +5502,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2717:1: rule__RepositoryComponent_Impl__Group_3__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2014:1: rule__RepositoryComponent_Impl__Group_3__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* ) ;
     public final void rule__RepositoryComponent_Impl__Group_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2721:1: ( ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2722:1: ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2018:1: ( ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2019:1: ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2722:1: ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2723:1: ( rule__RepositoryComponent_Impl__Group_3_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2019:1: ( ( rule__RepositoryComponent_Impl__Group_3_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2020:1: ( rule__RepositoryComponent_Impl__Group_3_3__0 )*
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2724:1: ( rule__RepositoryComponent_Impl__Group_3_3__0 )*
-            loop19:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2021:1: ( rule__RepositoryComponent_Impl__Group_3_3__0 )*
+            loop15:
             do {
-                int alt19=2;
-                int LA19_0 = input.LA(1);
+                int alt15=2;
+                int LA15_0 = input.LA(1);
 
-                if ( (LA19_0==23) ) {
-                    alt19=1;
+                if ( (LA15_0==26) ) {
+                    alt15=1;
                 }
 
 
-                switch (alt19) {
+                switch (alt15) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2724:2: rule__RepositoryComponent_Impl__Group_3_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2021:2: rule__RepositoryComponent_Impl__Group_3_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0_in_rule__RepositoryComponent_Impl__Group_3__3__Impl5493);
+            	    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0_in_rule__RepositoryComponent_Impl__Group_3__3__Impl4125);
             	    rule__RepositoryComponent_Impl__Group_3_3__0();
 
             	    state._fsp--;
@@ -7287,7 +5540,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop19;
+            	    break loop15;
                 }
             } while (true);
 
@@ -7314,16 +5567,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2734:1: rule__RepositoryComponent_Impl__Group_3__4 : rule__RepositoryComponent_Impl__Group_3__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2031:1: rule__RepositoryComponent_Impl__Group_3__4 : rule__RepositoryComponent_Impl__Group_3__4__Impl ;
     public final void rule__RepositoryComponent_Impl__Group_3__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2738:1: ( rule__RepositoryComponent_Impl__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2739:2: rule__RepositoryComponent_Impl__Group_3__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2035:1: ( rule__RepositoryComponent_Impl__Group_3__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2036:2: rule__RepositoryComponent_Impl__Group_3__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__4__Impl_in_rule__RepositoryComponent_Impl__Group_3__45524);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3__4__Impl_in_rule__RepositoryComponent_Impl__Group_3__44156);
             rule__RepositoryComponent_Impl__Group_3__4__Impl();
 
             state._fsp--;
@@ -7347,20 +5600,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2745:1: rule__RepositoryComponent_Impl__Group_3__4__Impl : ( ')' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2042:1: rule__RepositoryComponent_Impl__Group_3__4__Impl : ( ')' ) ;
     public final void rule__RepositoryComponent_Impl__Group_3__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2749:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2750:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2046:1: ( ( ')' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2047:1: ( ')' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2750:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2751:1: ')'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2047:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2048:1: ')'
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRightParenthesisKeyword_3_4()); 
-            match(input,29,FollowSets000.FOLLOW_29_in_rule__RepositoryComponent_Impl__Group_3__4__Impl5552); 
+            match(input,25,FollowSets000.FOLLOW_25_in_rule__RepositoryComponent_Impl__Group_3__4__Impl4184); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getRightParenthesisKeyword_3_4()); 
 
             }
@@ -7384,21 +5637,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2774:1: rule__RepositoryComponent_Impl__Group_3_3__0 : rule__RepositoryComponent_Impl__Group_3_3__0__Impl rule__RepositoryComponent_Impl__Group_3_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2071:1: rule__RepositoryComponent_Impl__Group_3_3__0 : rule__RepositoryComponent_Impl__Group_3_3__0__Impl rule__RepositoryComponent_Impl__Group_3_3__1 ;
     public final void rule__RepositoryComponent_Impl__Group_3_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2778:1: ( rule__RepositoryComponent_Impl__Group_3_3__0__Impl rule__RepositoryComponent_Impl__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2779:2: rule__RepositoryComponent_Impl__Group_3_3__0__Impl rule__RepositoryComponent_Impl__Group_3_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2075:1: ( rule__RepositoryComponent_Impl__Group_3_3__0__Impl rule__RepositoryComponent_Impl__Group_3_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2076:2: rule__RepositoryComponent_Impl__Group_3_3__0__Impl rule__RepositoryComponent_Impl__Group_3_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__05593);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__04225);
             rule__RepositoryComponent_Impl__Group_3_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1_in_rule__RepositoryComponent_Impl__Group_3_3__05596);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1_in_rule__RepositoryComponent_Impl__Group_3_3__04228);
             rule__RepositoryComponent_Impl__Group_3_3__1();
 
             state._fsp--;
@@ -7422,20 +5675,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2786:1: rule__RepositoryComponent_Impl__Group_3_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2083:1: rule__RepositoryComponent_Impl__Group_3_3__0__Impl : ( ',' ) ;
     public final void rule__RepositoryComponent_Impl__Group_3_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2790:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2791:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2087:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2088:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2791:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2792:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2088:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2089:1: ','
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_3_3__0__Impl5624); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__RepositoryComponent_Impl__Group_3_3__0__Impl4256); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_3_3_0()); 
 
             }
@@ -7459,16 +5712,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2805:1: rule__RepositoryComponent_Impl__Group_3_3__1 : rule__RepositoryComponent_Impl__Group_3_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2102:1: rule__RepositoryComponent_Impl__Group_3_3__1 : rule__RepositoryComponent_Impl__Group_3_3__1__Impl ;
     public final void rule__RepositoryComponent_Impl__Group_3_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2809:1: ( rule__RepositoryComponent_Impl__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2810:2: rule__RepositoryComponent_Impl__Group_3_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2106:1: ( rule__RepositoryComponent_Impl__Group_3_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2107:2: rule__RepositoryComponent_Impl__Group_3_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__15655);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__14287);
             rule__RepositoryComponent_Impl__Group_3_3__1__Impl();
 
             state._fsp--;
@@ -7492,23 +5745,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2816:1: rule__RepositoryComponent_Impl__Group_3_3__1__Impl : ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2113:1: rule__RepositoryComponent_Impl__Group_3_3__1__Impl : ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) ) ;
     public final void rule__RepositoryComponent_Impl__Group_3_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2820:1: ( ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2821:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2117:1: ( ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2118:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2821:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2822:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2118:1: ( ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2119:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 )
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2823:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2823:2: rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2120:1: ( rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2120:2: rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1_in_rule__RepositoryComponent_Impl__Group_3_3__1__Impl5682);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1_in_rule__RepositoryComponent_Impl__Group_3_3__1__Impl4314);
             rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1();
 
             state._fsp--;
@@ -7539,21 +5792,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2837:1: rule__RepositoryComponent_Impl__Group_4__0 : rule__RepositoryComponent_Impl__Group_4__0__Impl rule__RepositoryComponent_Impl__Group_4__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2134:1: rule__RepositoryComponent_Impl__Group_4__0 : rule__RepositoryComponent_Impl__Group_4__0__Impl rule__RepositoryComponent_Impl__Group_4__1 ;
     public final void rule__RepositoryComponent_Impl__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2841:1: ( rule__RepositoryComponent_Impl__Group_4__0__Impl rule__RepositoryComponent_Impl__Group_4__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2842:2: rule__RepositoryComponent_Impl__Group_4__0__Impl rule__RepositoryComponent_Impl__Group_4__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2138:1: ( rule__RepositoryComponent_Impl__Group_4__0__Impl rule__RepositoryComponent_Impl__Group_4__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2139:2: rule__RepositoryComponent_Impl__Group_4__0__Impl rule__RepositoryComponent_Impl__Group_4__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__0__Impl_in_rule__RepositoryComponent_Impl__Group_4__05716);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__0__Impl_in_rule__RepositoryComponent_Impl__Group_4__04348);
             rule__RepositoryComponent_Impl__Group_4__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__1_in_rule__RepositoryComponent_Impl__Group_4__05719);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__1_in_rule__RepositoryComponent_Impl__Group_4__04351);
             rule__RepositoryComponent_Impl__Group_4__1();
 
             state._fsp--;
@@ -7577,20 +5830,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2849:1: rule__RepositoryComponent_Impl__Group_4__0__Impl : ( 'providedRoles' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2146:1: rule__RepositoryComponent_Impl__Group_4__0__Impl : ( 'providedRoles' ) ;
     public final void rule__RepositoryComponent_Impl__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2853:1: ( ( 'providedRoles' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2854:1: ( 'providedRoles' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2150:1: ( ( 'providedRoles' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2151:1: ( 'providedRoles' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2854:1: ( 'providedRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2855:1: 'providedRoles'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2151:1: ( 'providedRoles' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2152:1: 'providedRoles'
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesKeyword_4_0()); 
-            match(input,33,FollowSets000.FOLLOW_33_in_rule__RepositoryComponent_Impl__Group_4__0__Impl5747); 
+            match(input,30,FollowSets000.FOLLOW_30_in_rule__RepositoryComponent_Impl__Group_4__0__Impl4379); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesKeyword_4_0()); 
 
             }
@@ -7614,21 +5867,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2868:1: rule__RepositoryComponent_Impl__Group_4__1 : rule__RepositoryComponent_Impl__Group_4__1__Impl rule__RepositoryComponent_Impl__Group_4__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2165:1: rule__RepositoryComponent_Impl__Group_4__1 : rule__RepositoryComponent_Impl__Group_4__1__Impl rule__RepositoryComponent_Impl__Group_4__2 ;
     public final void rule__RepositoryComponent_Impl__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2872:1: ( rule__RepositoryComponent_Impl__Group_4__1__Impl rule__RepositoryComponent_Impl__Group_4__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2873:2: rule__RepositoryComponent_Impl__Group_4__1__Impl rule__RepositoryComponent_Impl__Group_4__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2169:1: ( rule__RepositoryComponent_Impl__Group_4__1__Impl rule__RepositoryComponent_Impl__Group_4__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2170:2: rule__RepositoryComponent_Impl__Group_4__1__Impl rule__RepositoryComponent_Impl__Group_4__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__1__Impl_in_rule__RepositoryComponent_Impl__Group_4__15778);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__1__Impl_in_rule__RepositoryComponent_Impl__Group_4__14410);
             rule__RepositoryComponent_Impl__Group_4__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__2_in_rule__RepositoryComponent_Impl__Group_4__15781);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__2_in_rule__RepositoryComponent_Impl__Group_4__14413);
             rule__RepositoryComponent_Impl__Group_4__2();
 
             state._fsp--;
@@ -7652,20 +5905,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2880:1: rule__RepositoryComponent_Impl__Group_4__1__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2177:1: rule__RepositoryComponent_Impl__Group_4__1__Impl : ( '{' ) ;
     public final void rule__RepositoryComponent_Impl__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2884:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2885:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2181:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2182:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2885:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2886:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2182:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2183:1: '{'
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_4_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_4__1__Impl5809); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_4__1__Impl4441); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_4_1()); 
 
             }
@@ -7689,21 +5942,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2899:1: rule__RepositoryComponent_Impl__Group_4__2 : rule__RepositoryComponent_Impl__Group_4__2__Impl rule__RepositoryComponent_Impl__Group_4__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2196:1: rule__RepositoryComponent_Impl__Group_4__2 : rule__RepositoryComponent_Impl__Group_4__2__Impl rule__RepositoryComponent_Impl__Group_4__3 ;
     public final void rule__RepositoryComponent_Impl__Group_4__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2903:1: ( rule__RepositoryComponent_Impl__Group_4__2__Impl rule__RepositoryComponent_Impl__Group_4__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2904:2: rule__RepositoryComponent_Impl__Group_4__2__Impl rule__RepositoryComponent_Impl__Group_4__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2200:1: ( rule__RepositoryComponent_Impl__Group_4__2__Impl rule__RepositoryComponent_Impl__Group_4__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2201:2: rule__RepositoryComponent_Impl__Group_4__2__Impl rule__RepositoryComponent_Impl__Group_4__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__2__Impl_in_rule__RepositoryComponent_Impl__Group_4__25840);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__2__Impl_in_rule__RepositoryComponent_Impl__Group_4__24472);
             rule__RepositoryComponent_Impl__Group_4__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__3_in_rule__RepositoryComponent_Impl__Group_4__25843);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__3_in_rule__RepositoryComponent_Impl__Group_4__24475);
             rule__RepositoryComponent_Impl__Group_4__3();
 
             state._fsp--;
@@ -7727,23 +5980,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2911:1: rule__RepositoryComponent_Impl__Group_4__2__Impl : ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2208:1: rule__RepositoryComponent_Impl__Group_4__2__Impl : ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) ) ;
     public final void rule__RepositoryComponent_Impl__Group_4__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2915:1: ( ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2916:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2212:1: ( ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2213:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2916:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2917:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2213:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2214:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 )
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2918:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2918:2: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2215:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2215:2: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2_in_rule__RepositoryComponent_Impl__Group_4__2__Impl5870);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2_in_rule__RepositoryComponent_Impl__Group_4__2__Impl4502);
             rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2();
 
             state._fsp--;
@@ -7774,21 +6027,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2928:1: rule__RepositoryComponent_Impl__Group_4__3 : rule__RepositoryComponent_Impl__Group_4__3__Impl rule__RepositoryComponent_Impl__Group_4__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2225:1: rule__RepositoryComponent_Impl__Group_4__3 : rule__RepositoryComponent_Impl__Group_4__3__Impl rule__RepositoryComponent_Impl__Group_4__4 ;
     public final void rule__RepositoryComponent_Impl__Group_4__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2932:1: ( rule__RepositoryComponent_Impl__Group_4__3__Impl rule__RepositoryComponent_Impl__Group_4__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2933:2: rule__RepositoryComponent_Impl__Group_4__3__Impl rule__RepositoryComponent_Impl__Group_4__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2229:1: ( rule__RepositoryComponent_Impl__Group_4__3__Impl rule__RepositoryComponent_Impl__Group_4__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2230:2: rule__RepositoryComponent_Impl__Group_4__3__Impl rule__RepositoryComponent_Impl__Group_4__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__3__Impl_in_rule__RepositoryComponent_Impl__Group_4__35900);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__3__Impl_in_rule__RepositoryComponent_Impl__Group_4__34532);
             rule__RepositoryComponent_Impl__Group_4__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__4_in_rule__RepositoryComponent_Impl__Group_4__35903);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__4_in_rule__RepositoryComponent_Impl__Group_4__34535);
             rule__RepositoryComponent_Impl__Group_4__4();
 
             state._fsp--;
@@ -7812,35 +6065,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2940:1: rule__RepositoryComponent_Impl__Group_4__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2237:1: rule__RepositoryComponent_Impl__Group_4__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* ) ;
     public final void rule__RepositoryComponent_Impl__Group_4__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2944:1: ( ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2945:1: ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2241:1: ( ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2242:1: ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2945:1: ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2946:1: ( rule__RepositoryComponent_Impl__Group_4_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2242:1: ( ( rule__RepositoryComponent_Impl__Group_4_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2243:1: ( rule__RepositoryComponent_Impl__Group_4_3__0 )*
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_4_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2947:1: ( rule__RepositoryComponent_Impl__Group_4_3__0 )*
-            loop20:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2244:1: ( rule__RepositoryComponent_Impl__Group_4_3__0 )*
+            loop16:
             do {
-                int alt20=2;
-                int LA20_0 = input.LA(1);
+                int alt16=2;
+                int LA16_0 = input.LA(1);
 
-                if ( (LA20_0==23) ) {
-                    alt20=1;
+                if ( (LA16_0==26) ) {
+                    alt16=1;
                 }
 
 
-                switch (alt20) {
+                switch (alt16) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2947:2: rule__RepositoryComponent_Impl__Group_4_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2244:2: rule__RepositoryComponent_Impl__Group_4_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0_in_rule__RepositoryComponent_Impl__Group_4__3__Impl5930);
+            	    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0_in_rule__RepositoryComponent_Impl__Group_4__3__Impl4562);
             	    rule__RepositoryComponent_Impl__Group_4_3__0();
 
             	    state._fsp--;
@@ -7850,7 +6103,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop20;
+            	    break loop16;
                 }
             } while (true);
 
@@ -7877,16 +6130,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2957:1: rule__RepositoryComponent_Impl__Group_4__4 : rule__RepositoryComponent_Impl__Group_4__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2254:1: rule__RepositoryComponent_Impl__Group_4__4 : rule__RepositoryComponent_Impl__Group_4__4__Impl ;
     public final void rule__RepositoryComponent_Impl__Group_4__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2961:1: ( rule__RepositoryComponent_Impl__Group_4__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2962:2: rule__RepositoryComponent_Impl__Group_4__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2258:1: ( rule__RepositoryComponent_Impl__Group_4__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2259:2: rule__RepositoryComponent_Impl__Group_4__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__4__Impl_in_rule__RepositoryComponent_Impl__Group_4__45961);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4__4__Impl_in_rule__RepositoryComponent_Impl__Group_4__44593);
             rule__RepositoryComponent_Impl__Group_4__4__Impl();
 
             state._fsp--;
@@ -7910,20 +6163,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2968:1: rule__RepositoryComponent_Impl__Group_4__4__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2265:1: rule__RepositoryComponent_Impl__Group_4__4__Impl : ( '}' ) ;
     public final void rule__RepositoryComponent_Impl__Group_4__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2972:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2973:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2269:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2270:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2973:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2974:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2270:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2271:1: '}'
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_4_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_4__4__Impl5989); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_4__4__Impl4621); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_4_4()); 
 
             }
@@ -7947,21 +6200,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2997:1: rule__RepositoryComponent_Impl__Group_4_3__0 : rule__RepositoryComponent_Impl__Group_4_3__0__Impl rule__RepositoryComponent_Impl__Group_4_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2294:1: rule__RepositoryComponent_Impl__Group_4_3__0 : rule__RepositoryComponent_Impl__Group_4_3__0__Impl rule__RepositoryComponent_Impl__Group_4_3__1 ;
     public final void rule__RepositoryComponent_Impl__Group_4_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3001:1: ( rule__RepositoryComponent_Impl__Group_4_3__0__Impl rule__RepositoryComponent_Impl__Group_4_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3002:2: rule__RepositoryComponent_Impl__Group_4_3__0__Impl rule__RepositoryComponent_Impl__Group_4_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2298:1: ( rule__RepositoryComponent_Impl__Group_4_3__0__Impl rule__RepositoryComponent_Impl__Group_4_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2299:2: rule__RepositoryComponent_Impl__Group_4_3__0__Impl rule__RepositoryComponent_Impl__Group_4_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__06030);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__04662);
             rule__RepositoryComponent_Impl__Group_4_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1_in_rule__RepositoryComponent_Impl__Group_4_3__06033);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1_in_rule__RepositoryComponent_Impl__Group_4_3__04665);
             rule__RepositoryComponent_Impl__Group_4_3__1();
 
             state._fsp--;
@@ -7985,20 +6238,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3009:1: rule__RepositoryComponent_Impl__Group_4_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2306:1: rule__RepositoryComponent_Impl__Group_4_3__0__Impl : ( ',' ) ;
     public final void rule__RepositoryComponent_Impl__Group_4_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3013:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3014:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2310:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2311:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3014:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3015:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2311:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2312:1: ','
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_4_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_4_3__0__Impl6061); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__RepositoryComponent_Impl__Group_4_3__0__Impl4693); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_4_3_0()); 
 
             }
@@ -8022,16 +6275,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3028:1: rule__RepositoryComponent_Impl__Group_4_3__1 : rule__RepositoryComponent_Impl__Group_4_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2325:1: rule__RepositoryComponent_Impl__Group_4_3__1 : rule__RepositoryComponent_Impl__Group_4_3__1__Impl ;
     public final void rule__RepositoryComponent_Impl__Group_4_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3032:1: ( rule__RepositoryComponent_Impl__Group_4_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3033:2: rule__RepositoryComponent_Impl__Group_4_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2329:1: ( rule__RepositoryComponent_Impl__Group_4_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2330:2: rule__RepositoryComponent_Impl__Group_4_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__16092);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__14724);
             rule__RepositoryComponent_Impl__Group_4_3__1__Impl();
 
             state._fsp--;
@@ -8055,23 +6308,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_4_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3039:1: rule__RepositoryComponent_Impl__Group_4_3__1__Impl : ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2336:1: rule__RepositoryComponent_Impl__Group_4_3__1__Impl : ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) ) ;
     public final void rule__RepositoryComponent_Impl__Group_4_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3043:1: ( ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3044:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2340:1: ( ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2341:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3044:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3045:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2341:1: ( ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2342:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 )
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesAssignment_4_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3046:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3046:2: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2343:1: ( rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2343:2: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1_in_rule__RepositoryComponent_Impl__Group_4_3__1__Impl6119);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1_in_rule__RepositoryComponent_Impl__Group_4_3__1__Impl4751);
             rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1();
 
             state._fsp--;
@@ -8102,21 +6355,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3060:1: rule__RepositoryComponent_Impl__Group_5__0 : rule__RepositoryComponent_Impl__Group_5__0__Impl rule__RepositoryComponent_Impl__Group_5__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2357:1: rule__RepositoryComponent_Impl__Group_5__0 : rule__RepositoryComponent_Impl__Group_5__0__Impl rule__RepositoryComponent_Impl__Group_5__1 ;
     public final void rule__RepositoryComponent_Impl__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3064:1: ( rule__RepositoryComponent_Impl__Group_5__0__Impl rule__RepositoryComponent_Impl__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3065:2: rule__RepositoryComponent_Impl__Group_5__0__Impl rule__RepositoryComponent_Impl__Group_5__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2361:1: ( rule__RepositoryComponent_Impl__Group_5__0__Impl rule__RepositoryComponent_Impl__Group_5__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2362:2: rule__RepositoryComponent_Impl__Group_5__0__Impl rule__RepositoryComponent_Impl__Group_5__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__0__Impl_in_rule__RepositoryComponent_Impl__Group_5__06153);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__0__Impl_in_rule__RepositoryComponent_Impl__Group_5__04785);
             rule__RepositoryComponent_Impl__Group_5__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__1_in_rule__RepositoryComponent_Impl__Group_5__06156);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__1_in_rule__RepositoryComponent_Impl__Group_5__04788);
             rule__RepositoryComponent_Impl__Group_5__1();
 
             state._fsp--;
@@ -8140,20 +6393,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3072:1: rule__RepositoryComponent_Impl__Group_5__0__Impl : ( 'requiredRoles' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2369:1: rule__RepositoryComponent_Impl__Group_5__0__Impl : ( 'requiredRoles' ) ;
     public final void rule__RepositoryComponent_Impl__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3076:1: ( ( 'requiredRoles' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3077:1: ( 'requiredRoles' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2373:1: ( ( 'requiredRoles' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2374:1: ( 'requiredRoles' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3077:1: ( 'requiredRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3078:1: 'requiredRoles'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2374:1: ( 'requiredRoles' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2375:1: 'requiredRoles'
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesKeyword_5_0()); 
-            match(input,34,FollowSets000.FOLLOW_34_in_rule__RepositoryComponent_Impl__Group_5__0__Impl6184); 
+            match(input,31,FollowSets000.FOLLOW_31_in_rule__RepositoryComponent_Impl__Group_5__0__Impl4816); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesKeyword_5_0()); 
 
             }
@@ -8177,21 +6430,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3091:1: rule__RepositoryComponent_Impl__Group_5__1 : rule__RepositoryComponent_Impl__Group_5__1__Impl rule__RepositoryComponent_Impl__Group_5__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2388:1: rule__RepositoryComponent_Impl__Group_5__1 : rule__RepositoryComponent_Impl__Group_5__1__Impl rule__RepositoryComponent_Impl__Group_5__2 ;
     public final void rule__RepositoryComponent_Impl__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3095:1: ( rule__RepositoryComponent_Impl__Group_5__1__Impl rule__RepositoryComponent_Impl__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3096:2: rule__RepositoryComponent_Impl__Group_5__1__Impl rule__RepositoryComponent_Impl__Group_5__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2392:1: ( rule__RepositoryComponent_Impl__Group_5__1__Impl rule__RepositoryComponent_Impl__Group_5__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2393:2: rule__RepositoryComponent_Impl__Group_5__1__Impl rule__RepositoryComponent_Impl__Group_5__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__1__Impl_in_rule__RepositoryComponent_Impl__Group_5__16215);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__1__Impl_in_rule__RepositoryComponent_Impl__Group_5__14847);
             rule__RepositoryComponent_Impl__Group_5__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__2_in_rule__RepositoryComponent_Impl__Group_5__16218);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__2_in_rule__RepositoryComponent_Impl__Group_5__14850);
             rule__RepositoryComponent_Impl__Group_5__2();
 
             state._fsp--;
@@ -8215,20 +6468,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3103:1: rule__RepositoryComponent_Impl__Group_5__1__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2400:1: rule__RepositoryComponent_Impl__Group_5__1__Impl : ( '{' ) ;
     public final void rule__RepositoryComponent_Impl__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3107:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3108:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2404:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2405:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3108:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3109:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2405:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2406:1: '{'
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_5_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_5__1__Impl6246); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_5__1__Impl4878); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_5_1()); 
 
             }
@@ -8252,21 +6505,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3122:1: rule__RepositoryComponent_Impl__Group_5__2 : rule__RepositoryComponent_Impl__Group_5__2__Impl rule__RepositoryComponent_Impl__Group_5__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2419:1: rule__RepositoryComponent_Impl__Group_5__2 : rule__RepositoryComponent_Impl__Group_5__2__Impl rule__RepositoryComponent_Impl__Group_5__3 ;
     public final void rule__RepositoryComponent_Impl__Group_5__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3126:1: ( rule__RepositoryComponent_Impl__Group_5__2__Impl rule__RepositoryComponent_Impl__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3127:2: rule__RepositoryComponent_Impl__Group_5__2__Impl rule__RepositoryComponent_Impl__Group_5__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2423:1: ( rule__RepositoryComponent_Impl__Group_5__2__Impl rule__RepositoryComponent_Impl__Group_5__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2424:2: rule__RepositoryComponent_Impl__Group_5__2__Impl rule__RepositoryComponent_Impl__Group_5__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__2__Impl_in_rule__RepositoryComponent_Impl__Group_5__26277);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__2__Impl_in_rule__RepositoryComponent_Impl__Group_5__24909);
             rule__RepositoryComponent_Impl__Group_5__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__3_in_rule__RepositoryComponent_Impl__Group_5__26280);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__3_in_rule__RepositoryComponent_Impl__Group_5__24912);
             rule__RepositoryComponent_Impl__Group_5__3();
 
             state._fsp--;
@@ -8290,23 +6543,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3134:1: rule__RepositoryComponent_Impl__Group_5__2__Impl : ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2431:1: rule__RepositoryComponent_Impl__Group_5__2__Impl : ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) ) ;
     public final void rule__RepositoryComponent_Impl__Group_5__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3138:1: ( ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3139:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2435:1: ( ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2436:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3139:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3140:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2436:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2437:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 )
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3141:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3141:2: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2438:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2438:2: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2_in_rule__RepositoryComponent_Impl__Group_5__2__Impl6307);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2_in_rule__RepositoryComponent_Impl__Group_5__2__Impl4939);
             rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2();
 
             state._fsp--;
@@ -8337,21 +6590,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3151:1: rule__RepositoryComponent_Impl__Group_5__3 : rule__RepositoryComponent_Impl__Group_5__3__Impl rule__RepositoryComponent_Impl__Group_5__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2448:1: rule__RepositoryComponent_Impl__Group_5__3 : rule__RepositoryComponent_Impl__Group_5__3__Impl rule__RepositoryComponent_Impl__Group_5__4 ;
     public final void rule__RepositoryComponent_Impl__Group_5__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3155:1: ( rule__RepositoryComponent_Impl__Group_5__3__Impl rule__RepositoryComponent_Impl__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3156:2: rule__RepositoryComponent_Impl__Group_5__3__Impl rule__RepositoryComponent_Impl__Group_5__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2452:1: ( rule__RepositoryComponent_Impl__Group_5__3__Impl rule__RepositoryComponent_Impl__Group_5__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2453:2: rule__RepositoryComponent_Impl__Group_5__3__Impl rule__RepositoryComponent_Impl__Group_5__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__3__Impl_in_rule__RepositoryComponent_Impl__Group_5__36337);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__3__Impl_in_rule__RepositoryComponent_Impl__Group_5__34969);
             rule__RepositoryComponent_Impl__Group_5__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__4_in_rule__RepositoryComponent_Impl__Group_5__36340);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__4_in_rule__RepositoryComponent_Impl__Group_5__34972);
             rule__RepositoryComponent_Impl__Group_5__4();
 
             state._fsp--;
@@ -8375,35 +6628,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3163:1: rule__RepositoryComponent_Impl__Group_5__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2460:1: rule__RepositoryComponent_Impl__Group_5__3__Impl : ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* ) ;
     public final void rule__RepositoryComponent_Impl__Group_5__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3167:1: ( ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3168:1: ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2464:1: ( ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2465:1: ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3168:1: ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3169:1: ( rule__RepositoryComponent_Impl__Group_5_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2465:1: ( ( rule__RepositoryComponent_Impl__Group_5_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2466:1: ( rule__RepositoryComponent_Impl__Group_5_3__0 )*
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3170:1: ( rule__RepositoryComponent_Impl__Group_5_3__0 )*
-            loop21:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2467:1: ( rule__RepositoryComponent_Impl__Group_5_3__0 )*
+            loop17:
             do {
-                int alt21=2;
-                int LA21_0 = input.LA(1);
+                int alt17=2;
+                int LA17_0 = input.LA(1);
 
-                if ( (LA21_0==23) ) {
-                    alt21=1;
+                if ( (LA17_0==26) ) {
+                    alt17=1;
                 }
 
 
-                switch (alt21) {
+                switch (alt17) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3170:2: rule__RepositoryComponent_Impl__Group_5_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2467:2: rule__RepositoryComponent_Impl__Group_5_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0_in_rule__RepositoryComponent_Impl__Group_5__3__Impl6367);
+            	    pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0_in_rule__RepositoryComponent_Impl__Group_5__3__Impl4999);
             	    rule__RepositoryComponent_Impl__Group_5_3__0();
 
             	    state._fsp--;
@@ -8413,7 +6666,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop21;
+            	    break loop17;
                 }
             } while (true);
 
@@ -8440,16 +6693,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3180:1: rule__RepositoryComponent_Impl__Group_5__4 : rule__RepositoryComponent_Impl__Group_5__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2477:1: rule__RepositoryComponent_Impl__Group_5__4 : rule__RepositoryComponent_Impl__Group_5__4__Impl ;
     public final void rule__RepositoryComponent_Impl__Group_5__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3184:1: ( rule__RepositoryComponent_Impl__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3185:2: rule__RepositoryComponent_Impl__Group_5__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2481:1: ( rule__RepositoryComponent_Impl__Group_5__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2482:2: rule__RepositoryComponent_Impl__Group_5__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__4__Impl_in_rule__RepositoryComponent_Impl__Group_5__46398);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5__4__Impl_in_rule__RepositoryComponent_Impl__Group_5__45030);
             rule__RepositoryComponent_Impl__Group_5__4__Impl();
 
             state._fsp--;
@@ -8473,20 +6726,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3191:1: rule__RepositoryComponent_Impl__Group_5__4__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2488:1: rule__RepositoryComponent_Impl__Group_5__4__Impl : ( '}' ) ;
     public final void rule__RepositoryComponent_Impl__Group_5__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3195:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3196:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2492:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2493:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3196:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3197:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2493:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2494:1: '}'
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_5_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_5__4__Impl6426); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_5__4__Impl5058); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_5_4()); 
 
             }
@@ -8510,21 +6763,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3220:1: rule__RepositoryComponent_Impl__Group_5_3__0 : rule__RepositoryComponent_Impl__Group_5_3__0__Impl rule__RepositoryComponent_Impl__Group_5_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2517:1: rule__RepositoryComponent_Impl__Group_5_3__0 : rule__RepositoryComponent_Impl__Group_5_3__0__Impl rule__RepositoryComponent_Impl__Group_5_3__1 ;
     public final void rule__RepositoryComponent_Impl__Group_5_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3224:1: ( rule__RepositoryComponent_Impl__Group_5_3__0__Impl rule__RepositoryComponent_Impl__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3225:2: rule__RepositoryComponent_Impl__Group_5_3__0__Impl rule__RepositoryComponent_Impl__Group_5_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2521:1: ( rule__RepositoryComponent_Impl__Group_5_3__0__Impl rule__RepositoryComponent_Impl__Group_5_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2522:2: rule__RepositoryComponent_Impl__Group_5_3__0__Impl rule__RepositoryComponent_Impl__Group_5_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__06467);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__05099);
             rule__RepositoryComponent_Impl__Group_5_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1_in_rule__RepositoryComponent_Impl__Group_5_3__06470);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1_in_rule__RepositoryComponent_Impl__Group_5_3__05102);
             rule__RepositoryComponent_Impl__Group_5_3__1();
 
             state._fsp--;
@@ -8548,20 +6801,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3232:1: rule__RepositoryComponent_Impl__Group_5_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2529:1: rule__RepositoryComponent_Impl__Group_5_3__0__Impl : ( ',' ) ;
     public final void rule__RepositoryComponent_Impl__Group_5_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3236:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3237:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2533:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2534:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3237:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3238:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2534:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2535:1: ','
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_5_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_5_3__0__Impl6498); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__RepositoryComponent_Impl__Group_5_3__0__Impl5130); 
              after(grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_5_3_0()); 
 
             }
@@ -8585,16 +6838,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3251:1: rule__RepositoryComponent_Impl__Group_5_3__1 : rule__RepositoryComponent_Impl__Group_5_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2548:1: rule__RepositoryComponent_Impl__Group_5_3__1 : rule__RepositoryComponent_Impl__Group_5_3__1__Impl ;
     public final void rule__RepositoryComponent_Impl__Group_5_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3255:1: ( rule__RepositoryComponent_Impl__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3256:2: rule__RepositoryComponent_Impl__Group_5_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2552:1: ( rule__RepositoryComponent_Impl__Group_5_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2553:2: rule__RepositoryComponent_Impl__Group_5_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__16529);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__15161);
             rule__RepositoryComponent_Impl__Group_5_3__1__Impl();
 
             state._fsp--;
@@ -8618,23 +6871,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3262:1: rule__RepositoryComponent_Impl__Group_5_3__1__Impl : ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2559:1: rule__RepositoryComponent_Impl__Group_5_3__1__Impl : ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) ) ;
     public final void rule__RepositoryComponent_Impl__Group_5_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3266:1: ( ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3267:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2563:1: ( ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2564:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3267:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3268:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2564:1: ( ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2565:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 )
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3269:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3269:2: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2566:1: ( rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2566:2: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1_in_rule__RepositoryComponent_Impl__Group_5_3__1__Impl6556);
+            pushFollow(FollowSets000.FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1_in_rule__RepositoryComponent_Impl__Group_5_3__1__Impl5188);
             rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1();
 
             state._fsp--;
@@ -8665,21 +6918,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3283:1: rule__CollectionDataType__Group__0 : rule__CollectionDataType__Group__0__Impl rule__CollectionDataType__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2580:1: rule__CollectionDataType__Group__0 : rule__CollectionDataType__Group__0__Impl rule__CollectionDataType__Group__1 ;
     public final void rule__CollectionDataType__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3287:1: ( rule__CollectionDataType__Group__0__Impl rule__CollectionDataType__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3288:2: rule__CollectionDataType__Group__0__Impl rule__CollectionDataType__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2584:1: ( rule__CollectionDataType__Group__0__Impl rule__CollectionDataType__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2585:2: rule__CollectionDataType__Group__0__Impl rule__CollectionDataType__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__0__Impl_in_rule__CollectionDataType__Group__06590);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__0__Impl_in_rule__CollectionDataType__Group__05222);
             rule__CollectionDataType__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__1_in_rule__CollectionDataType__Group__06593);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__1_in_rule__CollectionDataType__Group__05225);
             rule__CollectionDataType__Group__1();
 
             state._fsp--;
@@ -8703,20 +6956,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3295:1: rule__CollectionDataType__Group__0__Impl : ( 'CollectionDataType' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2592:1: rule__CollectionDataType__Group__0__Impl : ( 'CollectionDataType' ) ;
     public final void rule__CollectionDataType__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3299:1: ( ( 'CollectionDataType' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3300:1: ( 'CollectionDataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2596:1: ( ( 'CollectionDataType' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2597:1: ( 'CollectionDataType' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3300:1: ( 'CollectionDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3301:1: 'CollectionDataType'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2597:1: ( 'CollectionDataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2598:1: 'CollectionDataType'
             {
              before(grammarAccess.getCollectionDataTypeAccess().getCollectionDataTypeKeyword_0()); 
-            match(input,35,FollowSets000.FOLLOW_35_in_rule__CollectionDataType__Group__0__Impl6621); 
+            match(input,32,FollowSets000.FOLLOW_32_in_rule__CollectionDataType__Group__0__Impl5253); 
              after(grammarAccess.getCollectionDataTypeAccess().getCollectionDataTypeKeyword_0()); 
 
             }
@@ -8740,21 +6993,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3314:1: rule__CollectionDataType__Group__1 : rule__CollectionDataType__Group__1__Impl rule__CollectionDataType__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2611:1: rule__CollectionDataType__Group__1 : rule__CollectionDataType__Group__1__Impl rule__CollectionDataType__Group__2 ;
     public final void rule__CollectionDataType__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3318:1: ( rule__CollectionDataType__Group__1__Impl rule__CollectionDataType__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3319:2: rule__CollectionDataType__Group__1__Impl rule__CollectionDataType__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2615:1: ( rule__CollectionDataType__Group__1__Impl rule__CollectionDataType__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2616:2: rule__CollectionDataType__Group__1__Impl rule__CollectionDataType__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__1__Impl_in_rule__CollectionDataType__Group__16652);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__1__Impl_in_rule__CollectionDataType__Group__15284);
             rule__CollectionDataType__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__2_in_rule__CollectionDataType__Group__16655);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__2_in_rule__CollectionDataType__Group__15287);
             rule__CollectionDataType__Group__2();
 
             state._fsp--;
@@ -8778,23 +7031,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3326:1: rule__CollectionDataType__Group__1__Impl : ( ( rule__CollectionDataType__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2623:1: rule__CollectionDataType__Group__1__Impl : ( ( rule__CollectionDataType__NameAssignment_1 ) ) ;
     public final void rule__CollectionDataType__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3330:1: ( ( ( rule__CollectionDataType__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3331:1: ( ( rule__CollectionDataType__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2627:1: ( ( ( rule__CollectionDataType__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2628:1: ( ( rule__CollectionDataType__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3331:1: ( ( rule__CollectionDataType__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3332:1: ( rule__CollectionDataType__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2628:1: ( ( rule__CollectionDataType__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2629:1: ( rule__CollectionDataType__NameAssignment_1 )
             {
              before(grammarAccess.getCollectionDataTypeAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3333:1: ( rule__CollectionDataType__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3333:2: rule__CollectionDataType__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2630:1: ( rule__CollectionDataType__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2630:2: rule__CollectionDataType__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__NameAssignment_1_in_rule__CollectionDataType__Group__1__Impl6682);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__NameAssignment_1_in_rule__CollectionDataType__Group__1__Impl5314);
             rule__CollectionDataType__NameAssignment_1();
 
             state._fsp--;
@@ -8825,21 +7078,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3343:1: rule__CollectionDataType__Group__2 : rule__CollectionDataType__Group__2__Impl rule__CollectionDataType__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2640:1: rule__CollectionDataType__Group__2 : rule__CollectionDataType__Group__2__Impl rule__CollectionDataType__Group__3 ;
     public final void rule__CollectionDataType__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3347:1: ( rule__CollectionDataType__Group__2__Impl rule__CollectionDataType__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3348:2: rule__CollectionDataType__Group__2__Impl rule__CollectionDataType__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2644:1: ( rule__CollectionDataType__Group__2__Impl rule__CollectionDataType__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2645:2: rule__CollectionDataType__Group__2__Impl rule__CollectionDataType__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__2__Impl_in_rule__CollectionDataType__Group__26712);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__2__Impl_in_rule__CollectionDataType__Group__25344);
             rule__CollectionDataType__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__3_in_rule__CollectionDataType__Group__26715);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__3_in_rule__CollectionDataType__Group__25347);
             rule__CollectionDataType__Group__3();
 
             state._fsp--;
@@ -8863,20 +7116,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3355:1: rule__CollectionDataType__Group__2__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2652:1: rule__CollectionDataType__Group__2__Impl : ( '{' ) ;
     public final void rule__CollectionDataType__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3359:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3360:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2656:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2657:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3360:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3361:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2657:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2658:1: '{'
             {
              before(grammarAccess.getCollectionDataTypeAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__CollectionDataType__Group__2__Impl6743); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__CollectionDataType__Group__2__Impl5375); 
              after(grammarAccess.getCollectionDataTypeAccess().getLeftCurlyBracketKeyword_2()); 
 
             }
@@ -8900,21 +7153,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3374:1: rule__CollectionDataType__Group__3 : rule__CollectionDataType__Group__3__Impl rule__CollectionDataType__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2671:1: rule__CollectionDataType__Group__3 : rule__CollectionDataType__Group__3__Impl rule__CollectionDataType__Group__4 ;
     public final void rule__CollectionDataType__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3378:1: ( rule__CollectionDataType__Group__3__Impl rule__CollectionDataType__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3379:2: rule__CollectionDataType__Group__3__Impl rule__CollectionDataType__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2675:1: ( rule__CollectionDataType__Group__3__Impl rule__CollectionDataType__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2676:2: rule__CollectionDataType__Group__3__Impl rule__CollectionDataType__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__3__Impl_in_rule__CollectionDataType__Group__36774);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__3__Impl_in_rule__CollectionDataType__Group__35406);
             rule__CollectionDataType__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__4_in_rule__CollectionDataType__Group__36777);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__4_in_rule__CollectionDataType__Group__35409);
             rule__CollectionDataType__Group__4();
 
             state._fsp--;
@@ -8938,20 +7191,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3386:1: rule__CollectionDataType__Group__3__Impl : ( 'innerType' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2683:1: rule__CollectionDataType__Group__3__Impl : ( 'innerType' ) ;
     public final void rule__CollectionDataType__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3390:1: ( ( 'innerType' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3391:1: ( 'innerType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2687:1: ( ( 'innerType' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2688:1: ( 'innerType' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3391:1: ( 'innerType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3392:1: 'innerType'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2688:1: ( 'innerType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2689:1: 'innerType'
             {
              before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeKeyword_3()); 
-            match(input,36,FollowSets000.FOLLOW_36_in_rule__CollectionDataType__Group__3__Impl6805); 
+            match(input,33,FollowSets000.FOLLOW_33_in_rule__CollectionDataType__Group__3__Impl5437); 
              after(grammarAccess.getCollectionDataTypeAccess().getInnerTypeKeyword_3()); 
 
             }
@@ -8975,21 +7228,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3405:1: rule__CollectionDataType__Group__4 : rule__CollectionDataType__Group__4__Impl rule__CollectionDataType__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2702:1: rule__CollectionDataType__Group__4 : rule__CollectionDataType__Group__4__Impl rule__CollectionDataType__Group__5 ;
     public final void rule__CollectionDataType__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3409:1: ( rule__CollectionDataType__Group__4__Impl rule__CollectionDataType__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3410:2: rule__CollectionDataType__Group__4__Impl rule__CollectionDataType__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2706:1: ( rule__CollectionDataType__Group__4__Impl rule__CollectionDataType__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2707:2: rule__CollectionDataType__Group__4__Impl rule__CollectionDataType__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__4__Impl_in_rule__CollectionDataType__Group__46836);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__4__Impl_in_rule__CollectionDataType__Group__45468);
             rule__CollectionDataType__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__5_in_rule__CollectionDataType__Group__46839);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__5_in_rule__CollectionDataType__Group__45471);
             rule__CollectionDataType__Group__5();
 
             state._fsp--;
@@ -9013,23 +7266,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3417:1: rule__CollectionDataType__Group__4__Impl : ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2714:1: rule__CollectionDataType__Group__4__Impl : ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) ) ;
     public final void rule__CollectionDataType__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3421:1: ( ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3422:1: ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2718:1: ( ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2719:1: ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3422:1: ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3423:1: ( rule__CollectionDataType__InnerTypeAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2719:1: ( ( rule__CollectionDataType__InnerTypeAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2720:1: ( rule__CollectionDataType__InnerTypeAssignment_4 )
             {
              before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3424:1: ( rule__CollectionDataType__InnerTypeAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3424:2: rule__CollectionDataType__InnerTypeAssignment_4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2721:1: ( rule__CollectionDataType__InnerTypeAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2721:2: rule__CollectionDataType__InnerTypeAssignment_4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__InnerTypeAssignment_4_in_rule__CollectionDataType__Group__4__Impl6866);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__InnerTypeAssignment_4_in_rule__CollectionDataType__Group__4__Impl5498);
             rule__CollectionDataType__InnerTypeAssignment_4();
 
             state._fsp--;
@@ -9060,16 +7313,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3434:1: rule__CollectionDataType__Group__5 : rule__CollectionDataType__Group__5__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2731:1: rule__CollectionDataType__Group__5 : rule__CollectionDataType__Group__5__Impl ;
     public final void rule__CollectionDataType__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3438:1: ( rule__CollectionDataType__Group__5__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3439:2: rule__CollectionDataType__Group__5__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2735:1: ( rule__CollectionDataType__Group__5__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2736:2: rule__CollectionDataType__Group__5__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__5__Impl_in_rule__CollectionDataType__Group__56896);
+            pushFollow(FollowSets000.FOLLOW_rule__CollectionDataType__Group__5__Impl_in_rule__CollectionDataType__Group__55528);
             rule__CollectionDataType__Group__5__Impl();
 
             state._fsp--;
@@ -9093,20 +7346,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3445:1: rule__CollectionDataType__Group__5__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2742:1: rule__CollectionDataType__Group__5__Impl : ( '}' ) ;
     public final void rule__CollectionDataType__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3449:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3450:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2746:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2747:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3450:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3451:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2747:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2748:1: '}'
             {
              before(grammarAccess.getCollectionDataTypeAccess().getRightCurlyBracketKeyword_5()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__CollectionDataType__Group__5__Impl6924); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__CollectionDataType__Group__5__Impl5556); 
              after(grammarAccess.getCollectionDataTypeAccess().getRightCurlyBracketKeyword_5()); 
 
             }
@@ -9130,21 +7383,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3476:1: rule__CompositeDataType__Group__0 : rule__CompositeDataType__Group__0__Impl rule__CompositeDataType__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2773:1: rule__CompositeDataType__Group__0 : rule__CompositeDataType__Group__0__Impl rule__CompositeDataType__Group__1 ;
     public final void rule__CompositeDataType__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3480:1: ( rule__CompositeDataType__Group__0__Impl rule__CompositeDataType__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3481:2: rule__CompositeDataType__Group__0__Impl rule__CompositeDataType__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2777:1: ( rule__CompositeDataType__Group__0__Impl rule__CompositeDataType__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2778:2: rule__CompositeDataType__Group__0__Impl rule__CompositeDataType__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__0__Impl_in_rule__CompositeDataType__Group__06967);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__0__Impl_in_rule__CompositeDataType__Group__05599);
             rule__CompositeDataType__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__1_in_rule__CompositeDataType__Group__06970);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__1_in_rule__CompositeDataType__Group__05602);
             rule__CompositeDataType__Group__1();
 
             state._fsp--;
@@ -9168,20 +7421,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3488:1: rule__CompositeDataType__Group__0__Impl : ( 'CompositeDataType' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2785:1: rule__CompositeDataType__Group__0__Impl : ( 'CompositeDataType' ) ;
     public final void rule__CompositeDataType__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3492:1: ( ( 'CompositeDataType' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3493:1: ( 'CompositeDataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2789:1: ( ( 'CompositeDataType' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2790:1: ( 'CompositeDataType' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3493:1: ( 'CompositeDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3494:1: 'CompositeDataType'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2790:1: ( 'CompositeDataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2791:1: 'CompositeDataType'
             {
              before(grammarAccess.getCompositeDataTypeAccess().getCompositeDataTypeKeyword_0()); 
-            match(input,37,FollowSets000.FOLLOW_37_in_rule__CompositeDataType__Group__0__Impl6998); 
+            match(input,34,FollowSets000.FOLLOW_34_in_rule__CompositeDataType__Group__0__Impl5630); 
              after(grammarAccess.getCompositeDataTypeAccess().getCompositeDataTypeKeyword_0()); 
 
             }
@@ -9205,21 +7458,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3507:1: rule__CompositeDataType__Group__1 : rule__CompositeDataType__Group__1__Impl rule__CompositeDataType__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2804:1: rule__CompositeDataType__Group__1 : rule__CompositeDataType__Group__1__Impl rule__CompositeDataType__Group__2 ;
     public final void rule__CompositeDataType__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3511:1: ( rule__CompositeDataType__Group__1__Impl rule__CompositeDataType__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3512:2: rule__CompositeDataType__Group__1__Impl rule__CompositeDataType__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2808:1: ( rule__CompositeDataType__Group__1__Impl rule__CompositeDataType__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2809:2: rule__CompositeDataType__Group__1__Impl rule__CompositeDataType__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__1__Impl_in_rule__CompositeDataType__Group__17029);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__1__Impl_in_rule__CompositeDataType__Group__15661);
             rule__CompositeDataType__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__2_in_rule__CompositeDataType__Group__17032);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__2_in_rule__CompositeDataType__Group__15664);
             rule__CompositeDataType__Group__2();
 
             state._fsp--;
@@ -9243,23 +7496,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3519:1: rule__CompositeDataType__Group__1__Impl : ( ( rule__CompositeDataType__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2816:1: rule__CompositeDataType__Group__1__Impl : ( ( rule__CompositeDataType__NameAssignment_1 ) ) ;
     public final void rule__CompositeDataType__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3523:1: ( ( ( rule__CompositeDataType__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3524:1: ( ( rule__CompositeDataType__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2820:1: ( ( ( rule__CompositeDataType__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2821:1: ( ( rule__CompositeDataType__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3524:1: ( ( rule__CompositeDataType__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3525:1: ( rule__CompositeDataType__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2821:1: ( ( rule__CompositeDataType__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2822:1: ( rule__CompositeDataType__NameAssignment_1 )
             {
              before(grammarAccess.getCompositeDataTypeAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3526:1: ( rule__CompositeDataType__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3526:2: rule__CompositeDataType__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2823:1: ( rule__CompositeDataType__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2823:2: rule__CompositeDataType__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__NameAssignment_1_in_rule__CompositeDataType__Group__1__Impl7059);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__NameAssignment_1_in_rule__CompositeDataType__Group__1__Impl5691);
             rule__CompositeDataType__NameAssignment_1();
 
             state._fsp--;
@@ -9290,21 +7543,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3536:1: rule__CompositeDataType__Group__2 : rule__CompositeDataType__Group__2__Impl rule__CompositeDataType__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2833:1: rule__CompositeDataType__Group__2 : rule__CompositeDataType__Group__2__Impl rule__CompositeDataType__Group__3 ;
     public final void rule__CompositeDataType__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3540:1: ( rule__CompositeDataType__Group__2__Impl rule__CompositeDataType__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3541:2: rule__CompositeDataType__Group__2__Impl rule__CompositeDataType__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2837:1: ( rule__CompositeDataType__Group__2__Impl rule__CompositeDataType__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2838:2: rule__CompositeDataType__Group__2__Impl rule__CompositeDataType__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__2__Impl_in_rule__CompositeDataType__Group__27089);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__2__Impl_in_rule__CompositeDataType__Group__25721);
             rule__CompositeDataType__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__3_in_rule__CompositeDataType__Group__27092);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__3_in_rule__CompositeDataType__Group__25724);
             rule__CompositeDataType__Group__3();
 
             state._fsp--;
@@ -9328,20 +7581,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3548:1: rule__CompositeDataType__Group__2__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2845:1: rule__CompositeDataType__Group__2__Impl : ( '{' ) ;
     public final void rule__CompositeDataType__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3552:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3553:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2849:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2850:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3553:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3554:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2850:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2851:1: '{'
             {
              before(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__CompositeDataType__Group__2__Impl7120); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__CompositeDataType__Group__2__Impl5752); 
              after(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_2()); 
 
             }
@@ -9365,21 +7618,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3567:1: rule__CompositeDataType__Group__3 : rule__CompositeDataType__Group__3__Impl rule__CompositeDataType__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2864:1: rule__CompositeDataType__Group__3 : rule__CompositeDataType__Group__3__Impl rule__CompositeDataType__Group__4 ;
     public final void rule__CompositeDataType__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3571:1: ( rule__CompositeDataType__Group__3__Impl rule__CompositeDataType__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3572:2: rule__CompositeDataType__Group__3__Impl rule__CompositeDataType__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2868:1: ( rule__CompositeDataType__Group__3__Impl rule__CompositeDataType__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2869:2: rule__CompositeDataType__Group__3__Impl rule__CompositeDataType__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__3__Impl_in_rule__CompositeDataType__Group__37151);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__3__Impl_in_rule__CompositeDataType__Group__35783);
             rule__CompositeDataType__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__4_in_rule__CompositeDataType__Group__37154);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__4_in_rule__CompositeDataType__Group__35786);
             rule__CompositeDataType__Group__4();
 
             state._fsp--;
@@ -9403,31 +7656,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3579:1: rule__CompositeDataType__Group__3__Impl : ( ( rule__CompositeDataType__Group_3__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2876:1: rule__CompositeDataType__Group__3__Impl : ( ( rule__CompositeDataType__Group_3__0 )? ) ;
     public final void rule__CompositeDataType__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3583:1: ( ( ( rule__CompositeDataType__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3584:1: ( ( rule__CompositeDataType__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2880:1: ( ( ( rule__CompositeDataType__Group_3__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2881:1: ( ( rule__CompositeDataType__Group_3__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3584:1: ( ( rule__CompositeDataType__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3585:1: ( rule__CompositeDataType__Group_3__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2881:1: ( ( rule__CompositeDataType__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2882:1: ( rule__CompositeDataType__Group_3__0 )?
             {
              before(grammarAccess.getCompositeDataTypeAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3586:1: ( rule__CompositeDataType__Group_3__0 )?
-            int alt22=2;
-            int LA22_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2883:1: ( rule__CompositeDataType__Group_3__0 )?
+            int alt18=2;
+            int LA18_0 = input.LA(1);
 
-            if ( (LA22_0==38) ) {
-                alt22=1;
+            if ( (LA18_0==35) ) {
+                alt18=1;
             }
-            switch (alt22) {
+            switch (alt18) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3586:2: rule__CompositeDataType__Group_3__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2883:2: rule__CompositeDataType__Group_3__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__0_in_rule__CompositeDataType__Group__3__Impl7181);
+                    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__0_in_rule__CompositeDataType__Group__3__Impl5813);
                     rule__CompositeDataType__Group_3__0();
 
                     state._fsp--;
@@ -9461,21 +7714,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3596:1: rule__CompositeDataType__Group__4 : rule__CompositeDataType__Group__4__Impl rule__CompositeDataType__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2893:1: rule__CompositeDataType__Group__4 : rule__CompositeDataType__Group__4__Impl rule__CompositeDataType__Group__5 ;
     public final void rule__CompositeDataType__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3600:1: ( rule__CompositeDataType__Group__4__Impl rule__CompositeDataType__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3601:2: rule__CompositeDataType__Group__4__Impl rule__CompositeDataType__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2897:1: ( rule__CompositeDataType__Group__4__Impl rule__CompositeDataType__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2898:2: rule__CompositeDataType__Group__4__Impl rule__CompositeDataType__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__4__Impl_in_rule__CompositeDataType__Group__47212);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__4__Impl_in_rule__CompositeDataType__Group__45844);
             rule__CompositeDataType__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__5_in_rule__CompositeDataType__Group__47215);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__5_in_rule__CompositeDataType__Group__45847);
             rule__CompositeDataType__Group__5();
 
             state._fsp--;
@@ -9499,31 +7752,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3608:1: rule__CompositeDataType__Group__4__Impl : ( ( rule__CompositeDataType__Group_4__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2905:1: rule__CompositeDataType__Group__4__Impl : ( ( rule__CompositeDataType__Group_4__0 )? ) ;
     public final void rule__CompositeDataType__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3612:1: ( ( ( rule__CompositeDataType__Group_4__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3613:1: ( ( rule__CompositeDataType__Group_4__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2909:1: ( ( ( rule__CompositeDataType__Group_4__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2910:1: ( ( rule__CompositeDataType__Group_4__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3613:1: ( ( rule__CompositeDataType__Group_4__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3614:1: ( rule__CompositeDataType__Group_4__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2910:1: ( ( rule__CompositeDataType__Group_4__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2911:1: ( rule__CompositeDataType__Group_4__0 )?
             {
              before(grammarAccess.getCompositeDataTypeAccess().getGroup_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3615:1: ( rule__CompositeDataType__Group_4__0 )?
-            int alt23=2;
-            int LA23_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2912:1: ( rule__CompositeDataType__Group_4__0 )?
+            int alt19=2;
+            int LA19_0 = input.LA(1);
 
-            if ( (LA23_0==39) ) {
-                alt23=1;
+            if ( (LA19_0==36) ) {
+                alt19=1;
             }
-            switch (alt23) {
+            switch (alt19) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3615:2: rule__CompositeDataType__Group_4__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2912:2: rule__CompositeDataType__Group_4__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__0_in_rule__CompositeDataType__Group__4__Impl7242);
+                    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__0_in_rule__CompositeDataType__Group__4__Impl5874);
                     rule__CompositeDataType__Group_4__0();
 
                     state._fsp--;
@@ -9557,16 +7810,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3625:1: rule__CompositeDataType__Group__5 : rule__CompositeDataType__Group__5__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2922:1: rule__CompositeDataType__Group__5 : rule__CompositeDataType__Group__5__Impl ;
     public final void rule__CompositeDataType__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3629:1: ( rule__CompositeDataType__Group__5__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3630:2: rule__CompositeDataType__Group__5__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2926:1: ( rule__CompositeDataType__Group__5__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2927:2: rule__CompositeDataType__Group__5__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__5__Impl_in_rule__CompositeDataType__Group__57273);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group__5__Impl_in_rule__CompositeDataType__Group__55905);
             rule__CompositeDataType__Group__5__Impl();
 
             state._fsp--;
@@ -9590,20 +7843,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3636:1: rule__CompositeDataType__Group__5__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2933:1: rule__CompositeDataType__Group__5__Impl : ( '}' ) ;
     public final void rule__CompositeDataType__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3640:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3641:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2937:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2938:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3641:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3642:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2938:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2939:1: '}'
             {
              before(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_5()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__CompositeDataType__Group__5__Impl7301); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__CompositeDataType__Group__5__Impl5933); 
              after(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_5()); 
 
             }
@@ -9627,21 +7880,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3667:1: rule__CompositeDataType__Group_3__0 : rule__CompositeDataType__Group_3__0__Impl rule__CompositeDataType__Group_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2964:1: rule__CompositeDataType__Group_3__0 : rule__CompositeDataType__Group_3__0__Impl rule__CompositeDataType__Group_3__1 ;
     public final void rule__CompositeDataType__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3671:1: ( rule__CompositeDataType__Group_3__0__Impl rule__CompositeDataType__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3672:2: rule__CompositeDataType__Group_3__0__Impl rule__CompositeDataType__Group_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2968:1: ( rule__CompositeDataType__Group_3__0__Impl rule__CompositeDataType__Group_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2969:2: rule__CompositeDataType__Group_3__0__Impl rule__CompositeDataType__Group_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__0__Impl_in_rule__CompositeDataType__Group_3__07344);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__0__Impl_in_rule__CompositeDataType__Group_3__05976);
             rule__CompositeDataType__Group_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__1_in_rule__CompositeDataType__Group_3__07347);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__1_in_rule__CompositeDataType__Group_3__05979);
             rule__CompositeDataType__Group_3__1();
 
             state._fsp--;
@@ -9665,20 +7918,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3679:1: rule__CompositeDataType__Group_3__0__Impl : ( 'parentTypes' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2976:1: rule__CompositeDataType__Group_3__0__Impl : ( 'parentTypes' ) ;
     public final void rule__CompositeDataType__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3683:1: ( ( 'parentTypes' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3684:1: ( 'parentTypes' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2980:1: ( ( 'parentTypes' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2981:1: ( 'parentTypes' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3684:1: ( 'parentTypes' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3685:1: 'parentTypes'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2981:1: ( 'parentTypes' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2982:1: 'parentTypes'
             {
              before(grammarAccess.getCompositeDataTypeAccess().getParentTypesKeyword_3_0()); 
-            match(input,38,FollowSets000.FOLLOW_38_in_rule__CompositeDataType__Group_3__0__Impl7375); 
+            match(input,35,FollowSets000.FOLLOW_35_in_rule__CompositeDataType__Group_3__0__Impl6007); 
              after(grammarAccess.getCompositeDataTypeAccess().getParentTypesKeyword_3_0()); 
 
             }
@@ -9702,21 +7955,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3698:1: rule__CompositeDataType__Group_3__1 : rule__CompositeDataType__Group_3__1__Impl rule__CompositeDataType__Group_3__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2995:1: rule__CompositeDataType__Group_3__1 : rule__CompositeDataType__Group_3__1__Impl rule__CompositeDataType__Group_3__2 ;
     public final void rule__CompositeDataType__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3702:1: ( rule__CompositeDataType__Group_3__1__Impl rule__CompositeDataType__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3703:2: rule__CompositeDataType__Group_3__1__Impl rule__CompositeDataType__Group_3__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:2999:1: ( rule__CompositeDataType__Group_3__1__Impl rule__CompositeDataType__Group_3__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3000:2: rule__CompositeDataType__Group_3__1__Impl rule__CompositeDataType__Group_3__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__1__Impl_in_rule__CompositeDataType__Group_3__17406);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__1__Impl_in_rule__CompositeDataType__Group_3__16038);
             rule__CompositeDataType__Group_3__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__2_in_rule__CompositeDataType__Group_3__17409);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__2_in_rule__CompositeDataType__Group_3__16041);
             rule__CompositeDataType__Group_3__2();
 
             state._fsp--;
@@ -9740,20 +7993,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3710:1: rule__CompositeDataType__Group_3__1__Impl : ( '(' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3007:1: rule__CompositeDataType__Group_3__1__Impl : ( '(' ) ;
     public final void rule__CompositeDataType__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3714:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3715:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3011:1: ( ( '(' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3012:1: ( '(' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3715:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3716:1: '('
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3012:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3013:1: '('
             {
              before(grammarAccess.getCompositeDataTypeAccess().getLeftParenthesisKeyword_3_1()); 
-            match(input,28,FollowSets000.FOLLOW_28_in_rule__CompositeDataType__Group_3__1__Impl7437); 
+            match(input,24,FollowSets000.FOLLOW_24_in_rule__CompositeDataType__Group_3__1__Impl6069); 
              after(grammarAccess.getCompositeDataTypeAccess().getLeftParenthesisKeyword_3_1()); 
 
             }
@@ -9777,21 +8030,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3729:1: rule__CompositeDataType__Group_3__2 : rule__CompositeDataType__Group_3__2__Impl rule__CompositeDataType__Group_3__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3026:1: rule__CompositeDataType__Group_3__2 : rule__CompositeDataType__Group_3__2__Impl rule__CompositeDataType__Group_3__3 ;
     public final void rule__CompositeDataType__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3733:1: ( rule__CompositeDataType__Group_3__2__Impl rule__CompositeDataType__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3734:2: rule__CompositeDataType__Group_3__2__Impl rule__CompositeDataType__Group_3__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3030:1: ( rule__CompositeDataType__Group_3__2__Impl rule__CompositeDataType__Group_3__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3031:2: rule__CompositeDataType__Group_3__2__Impl rule__CompositeDataType__Group_3__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__2__Impl_in_rule__CompositeDataType__Group_3__27468);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__2__Impl_in_rule__CompositeDataType__Group_3__26100);
             rule__CompositeDataType__Group_3__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__3_in_rule__CompositeDataType__Group_3__27471);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__3_in_rule__CompositeDataType__Group_3__26103);
             rule__CompositeDataType__Group_3__3();
 
             state._fsp--;
@@ -9815,23 +8068,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3741:1: rule__CompositeDataType__Group_3__2__Impl : ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3038:1: rule__CompositeDataType__Group_3__2__Impl : ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) ) ;
     public final void rule__CompositeDataType__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3745:1: ( ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3746:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3042:1: ( ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3043:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3746:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3747:1: ( rule__CompositeDataType__ParentTypesAssignment_3_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3043:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3044:1: ( rule__CompositeDataType__ParentTypesAssignment_3_2 )
             {
              before(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3748:1: ( rule__CompositeDataType__ParentTypesAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3748:2: rule__CompositeDataType__ParentTypesAssignment_3_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3045:1: ( rule__CompositeDataType__ParentTypesAssignment_3_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3045:2: rule__CompositeDataType__ParentTypesAssignment_3_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_2_in_rule__CompositeDataType__Group_3__2__Impl7498);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_2_in_rule__CompositeDataType__Group_3__2__Impl6130);
             rule__CompositeDataType__ParentTypesAssignment_3_2();
 
             state._fsp--;
@@ -9862,21 +8115,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3758:1: rule__CompositeDataType__Group_3__3 : rule__CompositeDataType__Group_3__3__Impl rule__CompositeDataType__Group_3__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3055:1: rule__CompositeDataType__Group_3__3 : rule__CompositeDataType__Group_3__3__Impl rule__CompositeDataType__Group_3__4 ;
     public final void rule__CompositeDataType__Group_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3762:1: ( rule__CompositeDataType__Group_3__3__Impl rule__CompositeDataType__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3763:2: rule__CompositeDataType__Group_3__3__Impl rule__CompositeDataType__Group_3__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3059:1: ( rule__CompositeDataType__Group_3__3__Impl rule__CompositeDataType__Group_3__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3060:2: rule__CompositeDataType__Group_3__3__Impl rule__CompositeDataType__Group_3__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__3__Impl_in_rule__CompositeDataType__Group_3__37528);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__3__Impl_in_rule__CompositeDataType__Group_3__36160);
             rule__CompositeDataType__Group_3__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__4_in_rule__CompositeDataType__Group_3__37531);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__4_in_rule__CompositeDataType__Group_3__36163);
             rule__CompositeDataType__Group_3__4();
 
             state._fsp--;
@@ -9900,35 +8153,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3770:1: rule__CompositeDataType__Group_3__3__Impl : ( ( rule__CompositeDataType__Group_3_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3067:1: rule__CompositeDataType__Group_3__3__Impl : ( ( rule__CompositeDataType__Group_3_3__0 )* ) ;
     public final void rule__CompositeDataType__Group_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3774:1: ( ( ( rule__CompositeDataType__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3775:1: ( ( rule__CompositeDataType__Group_3_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3071:1: ( ( ( rule__CompositeDataType__Group_3_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3072:1: ( ( rule__CompositeDataType__Group_3_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3775:1: ( ( rule__CompositeDataType__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3776:1: ( rule__CompositeDataType__Group_3_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3072:1: ( ( rule__CompositeDataType__Group_3_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3073:1: ( rule__CompositeDataType__Group_3_3__0 )*
             {
              before(grammarAccess.getCompositeDataTypeAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3777:1: ( rule__CompositeDataType__Group_3_3__0 )*
-            loop24:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3074:1: ( rule__CompositeDataType__Group_3_3__0 )*
+            loop20:
             do {
-                int alt24=2;
-                int LA24_0 = input.LA(1);
+                int alt20=2;
+                int LA20_0 = input.LA(1);
 
-                if ( (LA24_0==23) ) {
-                    alt24=1;
+                if ( (LA20_0==26) ) {
+                    alt20=1;
                 }
 
 
-                switch (alt24) {
+                switch (alt20) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3777:2: rule__CompositeDataType__Group_3_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3074:2: rule__CompositeDataType__Group_3_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__0_in_rule__CompositeDataType__Group_3__3__Impl7558);
+            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__0_in_rule__CompositeDataType__Group_3__3__Impl6190);
             	    rule__CompositeDataType__Group_3_3__0();
 
             	    state._fsp--;
@@ -9938,7 +8191,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop24;
+            	    break loop20;
                 }
             } while (true);
 
@@ -9965,16 +8218,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3787:1: rule__CompositeDataType__Group_3__4 : rule__CompositeDataType__Group_3__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3084:1: rule__CompositeDataType__Group_3__4 : rule__CompositeDataType__Group_3__4__Impl ;
     public final void rule__CompositeDataType__Group_3__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3791:1: ( rule__CompositeDataType__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3792:2: rule__CompositeDataType__Group_3__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3088:1: ( rule__CompositeDataType__Group_3__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3089:2: rule__CompositeDataType__Group_3__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__4__Impl_in_rule__CompositeDataType__Group_3__47589);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3__4__Impl_in_rule__CompositeDataType__Group_3__46221);
             rule__CompositeDataType__Group_3__4__Impl();
 
             state._fsp--;
@@ -9998,20 +8251,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3798:1: rule__CompositeDataType__Group_3__4__Impl : ( ')' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3095:1: rule__CompositeDataType__Group_3__4__Impl : ( ')' ) ;
     public final void rule__CompositeDataType__Group_3__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3802:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3803:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3099:1: ( ( ')' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3100:1: ( ')' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3803:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3804:1: ')'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3100:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3101:1: ')'
             {
              before(grammarAccess.getCompositeDataTypeAccess().getRightParenthesisKeyword_3_4()); 
-            match(input,29,FollowSets000.FOLLOW_29_in_rule__CompositeDataType__Group_3__4__Impl7617); 
+            match(input,25,FollowSets000.FOLLOW_25_in_rule__CompositeDataType__Group_3__4__Impl6249); 
              after(grammarAccess.getCompositeDataTypeAccess().getRightParenthesisKeyword_3_4()); 
 
             }
@@ -10035,21 +8288,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3827:1: rule__CompositeDataType__Group_3_3__0 : rule__CompositeDataType__Group_3_3__0__Impl rule__CompositeDataType__Group_3_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3124:1: rule__CompositeDataType__Group_3_3__0 : rule__CompositeDataType__Group_3_3__0__Impl rule__CompositeDataType__Group_3_3__1 ;
     public final void rule__CompositeDataType__Group_3_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3831:1: ( rule__CompositeDataType__Group_3_3__0__Impl rule__CompositeDataType__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3832:2: rule__CompositeDataType__Group_3_3__0__Impl rule__CompositeDataType__Group_3_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3128:1: ( rule__CompositeDataType__Group_3_3__0__Impl rule__CompositeDataType__Group_3_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3129:2: rule__CompositeDataType__Group_3_3__0__Impl rule__CompositeDataType__Group_3_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__0__Impl_in_rule__CompositeDataType__Group_3_3__07658);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__0__Impl_in_rule__CompositeDataType__Group_3_3__06290);
             rule__CompositeDataType__Group_3_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__1_in_rule__CompositeDataType__Group_3_3__07661);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__1_in_rule__CompositeDataType__Group_3_3__06293);
             rule__CompositeDataType__Group_3_3__1();
 
             state._fsp--;
@@ -10073,20 +8326,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3839:1: rule__CompositeDataType__Group_3_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3136:1: rule__CompositeDataType__Group_3_3__0__Impl : ( ',' ) ;
     public final void rule__CompositeDataType__Group_3_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3843:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3844:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3140:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3141:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3844:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3845:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3141:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3142:1: ','
             {
              before(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__CompositeDataType__Group_3_3__0__Impl7689); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__CompositeDataType__Group_3_3__0__Impl6321); 
              after(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_3_3_0()); 
 
             }
@@ -10110,16 +8363,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3858:1: rule__CompositeDataType__Group_3_3__1 : rule__CompositeDataType__Group_3_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3155:1: rule__CompositeDataType__Group_3_3__1 : rule__CompositeDataType__Group_3_3__1__Impl ;
     public final void rule__CompositeDataType__Group_3_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3862:1: ( rule__CompositeDataType__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3863:2: rule__CompositeDataType__Group_3_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3159:1: ( rule__CompositeDataType__Group_3_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3160:2: rule__CompositeDataType__Group_3_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__1__Impl_in_rule__CompositeDataType__Group_3_3__17720);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_3_3__1__Impl_in_rule__CompositeDataType__Group_3_3__16352);
             rule__CompositeDataType__Group_3_3__1__Impl();
 
             state._fsp--;
@@ -10143,23 +8396,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3869:1: rule__CompositeDataType__Group_3_3__1__Impl : ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3166:1: rule__CompositeDataType__Group_3_3__1__Impl : ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) ) ;
     public final void rule__CompositeDataType__Group_3_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3873:1: ( ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3874:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3170:1: ( ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3171:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3874:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3875:1: ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3171:1: ( ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3172:1: ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 )
             {
              before(grammarAccess.getCompositeDataTypeAccess().getParentTypesAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3876:1: ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3876:2: rule__CompositeDataType__ParentTypesAssignment_3_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3173:1: ( rule__CompositeDataType__ParentTypesAssignment_3_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3173:2: rule__CompositeDataType__ParentTypesAssignment_3_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_3_1_in_rule__CompositeDataType__Group_3_3__1__Impl7747);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_3_1_in_rule__CompositeDataType__Group_3_3__1__Impl6379);
             rule__CompositeDataType__ParentTypesAssignment_3_3_1();
 
             state._fsp--;
@@ -10190,21 +8443,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3890:1: rule__CompositeDataType__Group_4__0 : rule__CompositeDataType__Group_4__0__Impl rule__CompositeDataType__Group_4__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3187:1: rule__CompositeDataType__Group_4__0 : rule__CompositeDataType__Group_4__0__Impl rule__CompositeDataType__Group_4__1 ;
     public final void rule__CompositeDataType__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3894:1: ( rule__CompositeDataType__Group_4__0__Impl rule__CompositeDataType__Group_4__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3895:2: rule__CompositeDataType__Group_4__0__Impl rule__CompositeDataType__Group_4__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3191:1: ( rule__CompositeDataType__Group_4__0__Impl rule__CompositeDataType__Group_4__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3192:2: rule__CompositeDataType__Group_4__0__Impl rule__CompositeDataType__Group_4__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__0__Impl_in_rule__CompositeDataType__Group_4__07781);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__0__Impl_in_rule__CompositeDataType__Group_4__06413);
             rule__CompositeDataType__Group_4__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__1_in_rule__CompositeDataType__Group_4__07784);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__1_in_rule__CompositeDataType__Group_4__06416);
             rule__CompositeDataType__Group_4__1();
 
             state._fsp--;
@@ -10228,20 +8481,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3902:1: rule__CompositeDataType__Group_4__0__Impl : ( 'innerDeclarations' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3199:1: rule__CompositeDataType__Group_4__0__Impl : ( 'innerDeclarations' ) ;
     public final void rule__CompositeDataType__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3906:1: ( ( 'innerDeclarations' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3907:1: ( 'innerDeclarations' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3203:1: ( ( 'innerDeclarations' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3204:1: ( 'innerDeclarations' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3907:1: ( 'innerDeclarations' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3908:1: 'innerDeclarations'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3204:1: ( 'innerDeclarations' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3205:1: 'innerDeclarations'
             {
              before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsKeyword_4_0()); 
-            match(input,39,FollowSets000.FOLLOW_39_in_rule__CompositeDataType__Group_4__0__Impl7812); 
+            match(input,36,FollowSets000.FOLLOW_36_in_rule__CompositeDataType__Group_4__0__Impl6444); 
              after(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsKeyword_4_0()); 
 
             }
@@ -10265,21 +8518,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3921:1: rule__CompositeDataType__Group_4__1 : rule__CompositeDataType__Group_4__1__Impl rule__CompositeDataType__Group_4__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3218:1: rule__CompositeDataType__Group_4__1 : rule__CompositeDataType__Group_4__1__Impl rule__CompositeDataType__Group_4__2 ;
     public final void rule__CompositeDataType__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3925:1: ( rule__CompositeDataType__Group_4__1__Impl rule__CompositeDataType__Group_4__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3926:2: rule__CompositeDataType__Group_4__1__Impl rule__CompositeDataType__Group_4__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3222:1: ( rule__CompositeDataType__Group_4__1__Impl rule__CompositeDataType__Group_4__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3223:2: rule__CompositeDataType__Group_4__1__Impl rule__CompositeDataType__Group_4__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__1__Impl_in_rule__CompositeDataType__Group_4__17843);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__1__Impl_in_rule__CompositeDataType__Group_4__16475);
             rule__CompositeDataType__Group_4__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__2_in_rule__CompositeDataType__Group_4__17846);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__2_in_rule__CompositeDataType__Group_4__16478);
             rule__CompositeDataType__Group_4__2();
 
             state._fsp--;
@@ -10303,20 +8556,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3933:1: rule__CompositeDataType__Group_4__1__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3230:1: rule__CompositeDataType__Group_4__1__Impl : ( '{' ) ;
     public final void rule__CompositeDataType__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3937:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3938:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3234:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3235:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3938:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3939:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3235:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3236:1: '{'
             {
              before(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_4_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__CompositeDataType__Group_4__1__Impl7874); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__CompositeDataType__Group_4__1__Impl6506); 
              after(grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_4_1()); 
 
             }
@@ -10340,21 +8593,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3952:1: rule__CompositeDataType__Group_4__2 : rule__CompositeDataType__Group_4__2__Impl rule__CompositeDataType__Group_4__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3249:1: rule__CompositeDataType__Group_4__2 : rule__CompositeDataType__Group_4__2__Impl rule__CompositeDataType__Group_4__3 ;
     public final void rule__CompositeDataType__Group_4__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3956:1: ( rule__CompositeDataType__Group_4__2__Impl rule__CompositeDataType__Group_4__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3957:2: rule__CompositeDataType__Group_4__2__Impl rule__CompositeDataType__Group_4__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3253:1: ( rule__CompositeDataType__Group_4__2__Impl rule__CompositeDataType__Group_4__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3254:2: rule__CompositeDataType__Group_4__2__Impl rule__CompositeDataType__Group_4__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__2__Impl_in_rule__CompositeDataType__Group_4__27905);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__2__Impl_in_rule__CompositeDataType__Group_4__26537);
             rule__CompositeDataType__Group_4__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__3_in_rule__CompositeDataType__Group_4__27908);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__3_in_rule__CompositeDataType__Group_4__26540);
             rule__CompositeDataType__Group_4__3();
 
             state._fsp--;
@@ -10378,23 +8631,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3964:1: rule__CompositeDataType__Group_4__2__Impl : ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3261:1: rule__CompositeDataType__Group_4__2__Impl : ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) ) ;
     public final void rule__CompositeDataType__Group_4__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3968:1: ( ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3969:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3265:1: ( ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3266:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3969:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3970:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3266:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3267:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 )
             {
              before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3971:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3971:2: rule__CompositeDataType__InnerDeclarationsAssignment_4_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3268:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3268:2: rule__CompositeDataType__InnerDeclarationsAssignment_4_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_2_in_rule__CompositeDataType__Group_4__2__Impl7935);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_2_in_rule__CompositeDataType__Group_4__2__Impl6567);
             rule__CompositeDataType__InnerDeclarationsAssignment_4_2();
 
             state._fsp--;
@@ -10425,21 +8678,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3981:1: rule__CompositeDataType__Group_4__3 : rule__CompositeDataType__Group_4__3__Impl rule__CompositeDataType__Group_4__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3278:1: rule__CompositeDataType__Group_4__3 : rule__CompositeDataType__Group_4__3__Impl rule__CompositeDataType__Group_4__4 ;
     public final void rule__CompositeDataType__Group_4__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3985:1: ( rule__CompositeDataType__Group_4__3__Impl rule__CompositeDataType__Group_4__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3986:2: rule__CompositeDataType__Group_4__3__Impl rule__CompositeDataType__Group_4__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3282:1: ( rule__CompositeDataType__Group_4__3__Impl rule__CompositeDataType__Group_4__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3283:2: rule__CompositeDataType__Group_4__3__Impl rule__CompositeDataType__Group_4__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__3__Impl_in_rule__CompositeDataType__Group_4__37965);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__3__Impl_in_rule__CompositeDataType__Group_4__36597);
             rule__CompositeDataType__Group_4__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__4_in_rule__CompositeDataType__Group_4__37968);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__4_in_rule__CompositeDataType__Group_4__36600);
             rule__CompositeDataType__Group_4__4();
 
             state._fsp--;
@@ -10463,35 +8716,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3993:1: rule__CompositeDataType__Group_4__3__Impl : ( ( rule__CompositeDataType__Group_4_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3290:1: rule__CompositeDataType__Group_4__3__Impl : ( ( rule__CompositeDataType__Group_4_3__0 )* ) ;
     public final void rule__CompositeDataType__Group_4__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3997:1: ( ( ( rule__CompositeDataType__Group_4_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3998:1: ( ( rule__CompositeDataType__Group_4_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3294:1: ( ( ( rule__CompositeDataType__Group_4_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3295:1: ( ( rule__CompositeDataType__Group_4_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3998:1: ( ( rule__CompositeDataType__Group_4_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3999:1: ( rule__CompositeDataType__Group_4_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3295:1: ( ( rule__CompositeDataType__Group_4_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3296:1: ( rule__CompositeDataType__Group_4_3__0 )*
             {
              before(grammarAccess.getCompositeDataTypeAccess().getGroup_4_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4000:1: ( rule__CompositeDataType__Group_4_3__0 )*
-            loop25:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3297:1: ( rule__CompositeDataType__Group_4_3__0 )*
+            loop21:
             do {
-                int alt25=2;
-                int LA25_0 = input.LA(1);
+                int alt21=2;
+                int LA21_0 = input.LA(1);
 
-                if ( (LA25_0==23) ) {
-                    alt25=1;
+                if ( (LA21_0==26) ) {
+                    alt21=1;
                 }
 
 
-                switch (alt25) {
+                switch (alt21) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4000:2: rule__CompositeDataType__Group_4_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3297:2: rule__CompositeDataType__Group_4_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__0_in_rule__CompositeDataType__Group_4__3__Impl7995);
+            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__0_in_rule__CompositeDataType__Group_4__3__Impl6627);
             	    rule__CompositeDataType__Group_4_3__0();
 
             	    state._fsp--;
@@ -10501,7 +8754,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop25;
+            	    break loop21;
                 }
             } while (true);
 
@@ -10528,16 +8781,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4010:1: rule__CompositeDataType__Group_4__4 : rule__CompositeDataType__Group_4__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3307:1: rule__CompositeDataType__Group_4__4 : rule__CompositeDataType__Group_4__4__Impl ;
     public final void rule__CompositeDataType__Group_4__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4014:1: ( rule__CompositeDataType__Group_4__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4015:2: rule__CompositeDataType__Group_4__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3311:1: ( rule__CompositeDataType__Group_4__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3312:2: rule__CompositeDataType__Group_4__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__4__Impl_in_rule__CompositeDataType__Group_4__48026);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4__4__Impl_in_rule__CompositeDataType__Group_4__46658);
             rule__CompositeDataType__Group_4__4__Impl();
 
             state._fsp--;
@@ -10561,20 +8814,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4021:1: rule__CompositeDataType__Group_4__4__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3318:1: rule__CompositeDataType__Group_4__4__Impl : ( '}' ) ;
     public final void rule__CompositeDataType__Group_4__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4025:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4026:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3322:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3323:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4026:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4027:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3323:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3324:1: '}'
             {
              before(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_4_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__CompositeDataType__Group_4__4__Impl8054); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__CompositeDataType__Group_4__4__Impl6686); 
              after(grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_4_4()); 
 
             }
@@ -10598,21 +8851,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4050:1: rule__CompositeDataType__Group_4_3__0 : rule__CompositeDataType__Group_4_3__0__Impl rule__CompositeDataType__Group_4_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3347:1: rule__CompositeDataType__Group_4_3__0 : rule__CompositeDataType__Group_4_3__0__Impl rule__CompositeDataType__Group_4_3__1 ;
     public final void rule__CompositeDataType__Group_4_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4054:1: ( rule__CompositeDataType__Group_4_3__0__Impl rule__CompositeDataType__Group_4_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4055:2: rule__CompositeDataType__Group_4_3__0__Impl rule__CompositeDataType__Group_4_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3351:1: ( rule__CompositeDataType__Group_4_3__0__Impl rule__CompositeDataType__Group_4_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3352:2: rule__CompositeDataType__Group_4_3__0__Impl rule__CompositeDataType__Group_4_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__0__Impl_in_rule__CompositeDataType__Group_4_3__08095);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__0__Impl_in_rule__CompositeDataType__Group_4_3__06727);
             rule__CompositeDataType__Group_4_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__1_in_rule__CompositeDataType__Group_4_3__08098);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__1_in_rule__CompositeDataType__Group_4_3__06730);
             rule__CompositeDataType__Group_4_3__1();
 
             state._fsp--;
@@ -10636,20 +8889,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4062:1: rule__CompositeDataType__Group_4_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3359:1: rule__CompositeDataType__Group_4_3__0__Impl : ( ',' ) ;
     public final void rule__CompositeDataType__Group_4_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4066:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4067:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3363:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3364:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4067:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4068:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3364:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3365:1: ','
             {
              before(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_4_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__CompositeDataType__Group_4_3__0__Impl8126); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__CompositeDataType__Group_4_3__0__Impl6758); 
              after(grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_4_3_0()); 
 
             }
@@ -10673,16 +8926,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4081:1: rule__CompositeDataType__Group_4_3__1 : rule__CompositeDataType__Group_4_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3378:1: rule__CompositeDataType__Group_4_3__1 : rule__CompositeDataType__Group_4_3__1__Impl ;
     public final void rule__CompositeDataType__Group_4_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4085:1: ( rule__CompositeDataType__Group_4_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4086:2: rule__CompositeDataType__Group_4_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3382:1: ( rule__CompositeDataType__Group_4_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3383:2: rule__CompositeDataType__Group_4_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__1__Impl_in_rule__CompositeDataType__Group_4_3__18157);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__Group_4_3__1__Impl_in_rule__CompositeDataType__Group_4_3__16789);
             rule__CompositeDataType__Group_4_3__1__Impl();
 
             state._fsp--;
@@ -10706,23 +8959,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__Group_4_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4092:1: rule__CompositeDataType__Group_4_3__1__Impl : ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3389:1: rule__CompositeDataType__Group_4_3__1__Impl : ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) ) ;
     public final void rule__CompositeDataType__Group_4_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4096:1: ( ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4097:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3393:1: ( ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3394:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4097:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4098:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3394:1: ( ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3395:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 )
             {
              before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsAssignment_4_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4099:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4099:2: rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3396:1: ( rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3396:2: rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1_in_rule__CompositeDataType__Group_4_3__1__Impl8184);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1_in_rule__CompositeDataType__Group_4_3__1__Impl6816);
             rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1();
 
             state._fsp--;
@@ -10753,21 +9006,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4113:1: rule__PrimitiveDataType__Group__0 : rule__PrimitiveDataType__Group__0__Impl rule__PrimitiveDataType__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3410:1: rule__PrimitiveDataType__Group__0 : rule__PrimitiveDataType__Group__0__Impl rule__PrimitiveDataType__Group__1 ;
     public final void rule__PrimitiveDataType__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4117:1: ( rule__PrimitiveDataType__Group__0__Impl rule__PrimitiveDataType__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4118:2: rule__PrimitiveDataType__Group__0__Impl rule__PrimitiveDataType__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3414:1: ( rule__PrimitiveDataType__Group__0__Impl rule__PrimitiveDataType__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3415:2: rule__PrimitiveDataType__Group__0__Impl rule__PrimitiveDataType__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__0__Impl_in_rule__PrimitiveDataType__Group__08218);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__0__Impl_in_rule__PrimitiveDataType__Group__06850);
             rule__PrimitiveDataType__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__1_in_rule__PrimitiveDataType__Group__08221);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__1_in_rule__PrimitiveDataType__Group__06853);
             rule__PrimitiveDataType__Group__1();
 
             state._fsp--;
@@ -10791,20 +9044,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4125:1: rule__PrimitiveDataType__Group__0__Impl : ( 'PrimitiveDataType' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3422:1: rule__PrimitiveDataType__Group__0__Impl : ( 'PrimitiveDataType' ) ;
     public final void rule__PrimitiveDataType__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4129:1: ( ( 'PrimitiveDataType' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4130:1: ( 'PrimitiveDataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3426:1: ( ( 'PrimitiveDataType' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3427:1: ( 'PrimitiveDataType' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4130:1: ( 'PrimitiveDataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4131:1: 'PrimitiveDataType'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3427:1: ( 'PrimitiveDataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3428:1: 'PrimitiveDataType'
             {
              before(grammarAccess.getPrimitiveDataTypeAccess().getPrimitiveDataTypeKeyword_0()); 
-            match(input,40,FollowSets000.FOLLOW_40_in_rule__PrimitiveDataType__Group__0__Impl8249); 
+            match(input,37,FollowSets000.FOLLOW_37_in_rule__PrimitiveDataType__Group__0__Impl6881); 
              after(grammarAccess.getPrimitiveDataTypeAccess().getPrimitiveDataTypeKeyword_0()); 
 
             }
@@ -10828,21 +9081,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4144:1: rule__PrimitiveDataType__Group__1 : rule__PrimitiveDataType__Group__1__Impl rule__PrimitiveDataType__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3441:1: rule__PrimitiveDataType__Group__1 : rule__PrimitiveDataType__Group__1__Impl rule__PrimitiveDataType__Group__2 ;
     public final void rule__PrimitiveDataType__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4148:1: ( rule__PrimitiveDataType__Group__1__Impl rule__PrimitiveDataType__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4149:2: rule__PrimitiveDataType__Group__1__Impl rule__PrimitiveDataType__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3445:1: ( rule__PrimitiveDataType__Group__1__Impl rule__PrimitiveDataType__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3446:2: rule__PrimitiveDataType__Group__1__Impl rule__PrimitiveDataType__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__1__Impl_in_rule__PrimitiveDataType__Group__18280);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__1__Impl_in_rule__PrimitiveDataType__Group__16912);
             rule__PrimitiveDataType__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__2_in_rule__PrimitiveDataType__Group__18283);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__2_in_rule__PrimitiveDataType__Group__16915);
             rule__PrimitiveDataType__Group__2();
 
             state._fsp--;
@@ -10866,20 +9119,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4156:1: rule__PrimitiveDataType__Group__1__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3453:1: rule__PrimitiveDataType__Group__1__Impl : ( '{' ) ;
     public final void rule__PrimitiveDataType__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4160:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4161:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3457:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3458:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4161:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4162:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3458:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3459:1: '{'
             {
              before(grammarAccess.getPrimitiveDataTypeAccess().getLeftCurlyBracketKeyword_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__PrimitiveDataType__Group__1__Impl8311); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__PrimitiveDataType__Group__1__Impl6943); 
              after(grammarAccess.getPrimitiveDataTypeAccess().getLeftCurlyBracketKeyword_1()); 
 
             }
@@ -10903,21 +9156,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4175:1: rule__PrimitiveDataType__Group__2 : rule__PrimitiveDataType__Group__2__Impl rule__PrimitiveDataType__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3472:1: rule__PrimitiveDataType__Group__2 : rule__PrimitiveDataType__Group__2__Impl rule__PrimitiveDataType__Group__3 ;
     public final void rule__PrimitiveDataType__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4179:1: ( rule__PrimitiveDataType__Group__2__Impl rule__PrimitiveDataType__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4180:2: rule__PrimitiveDataType__Group__2__Impl rule__PrimitiveDataType__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3476:1: ( rule__PrimitiveDataType__Group__2__Impl rule__PrimitiveDataType__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3477:2: rule__PrimitiveDataType__Group__2__Impl rule__PrimitiveDataType__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__2__Impl_in_rule__PrimitiveDataType__Group__28342);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__2__Impl_in_rule__PrimitiveDataType__Group__26974);
             rule__PrimitiveDataType__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__3_in_rule__PrimitiveDataType__Group__28345);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__3_in_rule__PrimitiveDataType__Group__26977);
             rule__PrimitiveDataType__Group__3();
 
             state._fsp--;
@@ -10941,20 +9194,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4187:1: rule__PrimitiveDataType__Group__2__Impl : ( 'type' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3484:1: rule__PrimitiveDataType__Group__2__Impl : ( 'type' ) ;
     public final void rule__PrimitiveDataType__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4191:1: ( ( 'type' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4192:1: ( 'type' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3488:1: ( ( 'type' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3489:1: ( 'type' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4192:1: ( 'type' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4193:1: 'type'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3489:1: ( 'type' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3490:1: 'type'
             {
              before(grammarAccess.getPrimitiveDataTypeAccess().getTypeKeyword_2()); 
-            match(input,41,FollowSets000.FOLLOW_41_in_rule__PrimitiveDataType__Group__2__Impl8373); 
+            match(input,38,FollowSets000.FOLLOW_38_in_rule__PrimitiveDataType__Group__2__Impl7005); 
              after(grammarAccess.getPrimitiveDataTypeAccess().getTypeKeyword_2()); 
 
             }
@@ -10978,21 +9231,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4206:1: rule__PrimitiveDataType__Group__3 : rule__PrimitiveDataType__Group__3__Impl rule__PrimitiveDataType__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3503:1: rule__PrimitiveDataType__Group__3 : rule__PrimitiveDataType__Group__3__Impl rule__PrimitiveDataType__Group__4 ;
     public final void rule__PrimitiveDataType__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4210:1: ( rule__PrimitiveDataType__Group__3__Impl rule__PrimitiveDataType__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4211:2: rule__PrimitiveDataType__Group__3__Impl rule__PrimitiveDataType__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3507:1: ( rule__PrimitiveDataType__Group__3__Impl rule__PrimitiveDataType__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3508:2: rule__PrimitiveDataType__Group__3__Impl rule__PrimitiveDataType__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__3__Impl_in_rule__PrimitiveDataType__Group__38404);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__3__Impl_in_rule__PrimitiveDataType__Group__37036);
             rule__PrimitiveDataType__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__4_in_rule__PrimitiveDataType__Group__38407);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__4_in_rule__PrimitiveDataType__Group__37039);
             rule__PrimitiveDataType__Group__4();
 
             state._fsp--;
@@ -11016,23 +9269,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4218:1: rule__PrimitiveDataType__Group__3__Impl : ( ( rule__PrimitiveDataType__TypeAssignment_3 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3515:1: rule__PrimitiveDataType__Group__3__Impl : ( ( rule__PrimitiveDataType__TypeAssignment_3 ) ) ;
     public final void rule__PrimitiveDataType__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4222:1: ( ( ( rule__PrimitiveDataType__TypeAssignment_3 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4223:1: ( ( rule__PrimitiveDataType__TypeAssignment_3 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3519:1: ( ( ( rule__PrimitiveDataType__TypeAssignment_3 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3520:1: ( ( rule__PrimitiveDataType__TypeAssignment_3 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4223:1: ( ( rule__PrimitiveDataType__TypeAssignment_3 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4224:1: ( rule__PrimitiveDataType__TypeAssignment_3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3520:1: ( ( rule__PrimitiveDataType__TypeAssignment_3 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3521:1: ( rule__PrimitiveDataType__TypeAssignment_3 )
             {
              before(grammarAccess.getPrimitiveDataTypeAccess().getTypeAssignment_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4225:1: ( rule__PrimitiveDataType__TypeAssignment_3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4225:2: rule__PrimitiveDataType__TypeAssignment_3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3522:1: ( rule__PrimitiveDataType__TypeAssignment_3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3522:2: rule__PrimitiveDataType__TypeAssignment_3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__TypeAssignment_3_in_rule__PrimitiveDataType__Group__3__Impl8434);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__TypeAssignment_3_in_rule__PrimitiveDataType__Group__3__Impl7066);
             rule__PrimitiveDataType__TypeAssignment_3();
 
             state._fsp--;
@@ -11063,21 +9316,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4235:1: rule__PrimitiveDataType__Group__4 : rule__PrimitiveDataType__Group__4__Impl rule__PrimitiveDataType__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3532:1: rule__PrimitiveDataType__Group__4 : rule__PrimitiveDataType__Group__4__Impl rule__PrimitiveDataType__Group__5 ;
     public final void rule__PrimitiveDataType__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4239:1: ( rule__PrimitiveDataType__Group__4__Impl rule__PrimitiveDataType__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4240:2: rule__PrimitiveDataType__Group__4__Impl rule__PrimitiveDataType__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3536:1: ( rule__PrimitiveDataType__Group__4__Impl rule__PrimitiveDataType__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3537:2: rule__PrimitiveDataType__Group__4__Impl rule__PrimitiveDataType__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__4__Impl_in_rule__PrimitiveDataType__Group__48464);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__4__Impl_in_rule__PrimitiveDataType__Group__47096);
             rule__PrimitiveDataType__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__5_in_rule__PrimitiveDataType__Group__48467);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__5_in_rule__PrimitiveDataType__Group__47099);
             rule__PrimitiveDataType__Group__5();
 
             state._fsp--;
@@ -11101,20 +9354,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4247:1: rule__PrimitiveDataType__Group__4__Impl : ( 'ref' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3544:1: rule__PrimitiveDataType__Group__4__Impl : ( 'ref' ) ;
     public final void rule__PrimitiveDataType__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4251:1: ( ( 'ref' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4252:1: ( 'ref' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3548:1: ( ( 'ref' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3549:1: ( 'ref' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4252:1: ( 'ref' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4253:1: 'ref'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3549:1: ( 'ref' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3550:1: 'ref'
             {
              before(grammarAccess.getPrimitiveDataTypeAccess().getRefKeyword_4()); 
-            match(input,42,FollowSets000.FOLLOW_42_in_rule__PrimitiveDataType__Group__4__Impl8495); 
+            match(input,39,FollowSets000.FOLLOW_39_in_rule__PrimitiveDataType__Group__4__Impl7127); 
              after(grammarAccess.getPrimitiveDataTypeAccess().getRefKeyword_4()); 
 
             }
@@ -11138,21 +9391,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4266:1: rule__PrimitiveDataType__Group__5 : rule__PrimitiveDataType__Group__5__Impl rule__PrimitiveDataType__Group__6 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3563:1: rule__PrimitiveDataType__Group__5 : rule__PrimitiveDataType__Group__5__Impl rule__PrimitiveDataType__Group__6 ;
     public final void rule__PrimitiveDataType__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4270:1: ( rule__PrimitiveDataType__Group__5__Impl rule__PrimitiveDataType__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4271:2: rule__PrimitiveDataType__Group__5__Impl rule__PrimitiveDataType__Group__6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3567:1: ( rule__PrimitiveDataType__Group__5__Impl rule__PrimitiveDataType__Group__6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3568:2: rule__PrimitiveDataType__Group__5__Impl rule__PrimitiveDataType__Group__6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__5__Impl_in_rule__PrimitiveDataType__Group__58526);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__5__Impl_in_rule__PrimitiveDataType__Group__57158);
             rule__PrimitiveDataType__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__6_in_rule__PrimitiveDataType__Group__58529);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__6_in_rule__PrimitiveDataType__Group__57161);
             rule__PrimitiveDataType__Group__6();
 
             state._fsp--;
@@ -11176,23 +9429,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4278:1: rule__PrimitiveDataType__Group__5__Impl : ( ( rule__PrimitiveDataType__NameAssignment_5 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3575:1: rule__PrimitiveDataType__Group__5__Impl : ( ( rule__PrimitiveDataType__NameAssignment_5 ) ) ;
     public final void rule__PrimitiveDataType__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4282:1: ( ( ( rule__PrimitiveDataType__NameAssignment_5 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4283:1: ( ( rule__PrimitiveDataType__NameAssignment_5 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3579:1: ( ( ( rule__PrimitiveDataType__NameAssignment_5 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3580:1: ( ( rule__PrimitiveDataType__NameAssignment_5 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4283:1: ( ( rule__PrimitiveDataType__NameAssignment_5 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4284:1: ( rule__PrimitiveDataType__NameAssignment_5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3580:1: ( ( rule__PrimitiveDataType__NameAssignment_5 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3581:1: ( rule__PrimitiveDataType__NameAssignment_5 )
             {
              before(grammarAccess.getPrimitiveDataTypeAccess().getNameAssignment_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4285:1: ( rule__PrimitiveDataType__NameAssignment_5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4285:2: rule__PrimitiveDataType__NameAssignment_5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3582:1: ( rule__PrimitiveDataType__NameAssignment_5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3582:2: rule__PrimitiveDataType__NameAssignment_5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__NameAssignment_5_in_rule__PrimitiveDataType__Group__5__Impl8556);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__NameAssignment_5_in_rule__PrimitiveDataType__Group__5__Impl7188);
             rule__PrimitiveDataType__NameAssignment_5();
 
             state._fsp--;
@@ -11223,16 +9476,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4295:1: rule__PrimitiveDataType__Group__6 : rule__PrimitiveDataType__Group__6__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3592:1: rule__PrimitiveDataType__Group__6 : rule__PrimitiveDataType__Group__6__Impl ;
     public final void rule__PrimitiveDataType__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4299:1: ( rule__PrimitiveDataType__Group__6__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4300:2: rule__PrimitiveDataType__Group__6__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3596:1: ( rule__PrimitiveDataType__Group__6__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3597:2: rule__PrimitiveDataType__Group__6__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__6__Impl_in_rule__PrimitiveDataType__Group__68586);
+            pushFollow(FollowSets000.FOLLOW_rule__PrimitiveDataType__Group__6__Impl_in_rule__PrimitiveDataType__Group__67218);
             rule__PrimitiveDataType__Group__6__Impl();
 
             state._fsp--;
@@ -11256,20 +9509,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4306:1: rule__PrimitiveDataType__Group__6__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3603:1: rule__PrimitiveDataType__Group__6__Impl : ( '}' ) ;
     public final void rule__PrimitiveDataType__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4310:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4311:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3607:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3608:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4311:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4312:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3608:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3609:1: '}'
             {
              before(grammarAccess.getPrimitiveDataTypeAccess().getRightCurlyBracketKeyword_6()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__PrimitiveDataType__Group__6__Impl8614); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__PrimitiveDataType__Group__6__Impl7246); 
              after(grammarAccess.getPrimitiveDataTypeAccess().getRightCurlyBracketKeyword_6()); 
 
             }
@@ -11293,21 +9546,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4339:1: rule__InnerDeclaration__Group__0 : rule__InnerDeclaration__Group__0__Impl rule__InnerDeclaration__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3636:1: rule__InnerDeclaration__Group__0 : rule__InnerDeclaration__Group__0__Impl rule__InnerDeclaration__Group__1 ;
     public final void rule__InnerDeclaration__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4343:1: ( rule__InnerDeclaration__Group__0__Impl rule__InnerDeclaration__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4344:2: rule__InnerDeclaration__Group__0__Impl rule__InnerDeclaration__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3640:1: ( rule__InnerDeclaration__Group__0__Impl rule__InnerDeclaration__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3641:2: rule__InnerDeclaration__Group__0__Impl rule__InnerDeclaration__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__0__Impl_in_rule__InnerDeclaration__Group__08659);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__0__Impl_in_rule__InnerDeclaration__Group__07291);
             rule__InnerDeclaration__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__1_in_rule__InnerDeclaration__Group__08662);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__1_in_rule__InnerDeclaration__Group__07294);
             rule__InnerDeclaration__Group__1();
 
             state._fsp--;
@@ -11331,20 +9584,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4351:1: rule__InnerDeclaration__Group__0__Impl : ( 'InnerDeclaration' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3648:1: rule__InnerDeclaration__Group__0__Impl : ( 'InnerDeclaration' ) ;
     public final void rule__InnerDeclaration__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4355:1: ( ( 'InnerDeclaration' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4356:1: ( 'InnerDeclaration' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3652:1: ( ( 'InnerDeclaration' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3653:1: ( 'InnerDeclaration' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4356:1: ( 'InnerDeclaration' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4357:1: 'InnerDeclaration'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3653:1: ( 'InnerDeclaration' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3654:1: 'InnerDeclaration'
             {
              before(grammarAccess.getInnerDeclarationAccess().getInnerDeclarationKeyword_0()); 
-            match(input,43,FollowSets000.FOLLOW_43_in_rule__InnerDeclaration__Group__0__Impl8690); 
+            match(input,40,FollowSets000.FOLLOW_40_in_rule__InnerDeclaration__Group__0__Impl7322); 
              after(grammarAccess.getInnerDeclarationAccess().getInnerDeclarationKeyword_0()); 
 
             }
@@ -11368,21 +9621,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4370:1: rule__InnerDeclaration__Group__1 : rule__InnerDeclaration__Group__1__Impl rule__InnerDeclaration__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3667:1: rule__InnerDeclaration__Group__1 : rule__InnerDeclaration__Group__1__Impl rule__InnerDeclaration__Group__2 ;
     public final void rule__InnerDeclaration__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4374:1: ( rule__InnerDeclaration__Group__1__Impl rule__InnerDeclaration__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4375:2: rule__InnerDeclaration__Group__1__Impl rule__InnerDeclaration__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3671:1: ( rule__InnerDeclaration__Group__1__Impl rule__InnerDeclaration__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3672:2: rule__InnerDeclaration__Group__1__Impl rule__InnerDeclaration__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__1__Impl_in_rule__InnerDeclaration__Group__18721);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__1__Impl_in_rule__InnerDeclaration__Group__17353);
             rule__InnerDeclaration__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__2_in_rule__InnerDeclaration__Group__18724);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__2_in_rule__InnerDeclaration__Group__17356);
             rule__InnerDeclaration__Group__2();
 
             state._fsp--;
@@ -11406,23 +9659,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4382:1: rule__InnerDeclaration__Group__1__Impl : ( ( rule__InnerDeclaration__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3679:1: rule__InnerDeclaration__Group__1__Impl : ( ( rule__InnerDeclaration__NameAssignment_1 ) ) ;
     public final void rule__InnerDeclaration__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4386:1: ( ( ( rule__InnerDeclaration__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4387:1: ( ( rule__InnerDeclaration__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3683:1: ( ( ( rule__InnerDeclaration__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3684:1: ( ( rule__InnerDeclaration__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4387:1: ( ( rule__InnerDeclaration__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4388:1: ( rule__InnerDeclaration__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3684:1: ( ( rule__InnerDeclaration__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3685:1: ( rule__InnerDeclaration__NameAssignment_1 )
             {
              before(grammarAccess.getInnerDeclarationAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4389:1: ( rule__InnerDeclaration__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4389:2: rule__InnerDeclaration__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3686:1: ( rule__InnerDeclaration__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3686:2: rule__InnerDeclaration__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__NameAssignment_1_in_rule__InnerDeclaration__Group__1__Impl8751);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__NameAssignment_1_in_rule__InnerDeclaration__Group__1__Impl7383);
             rule__InnerDeclaration__NameAssignment_1();
 
             state._fsp--;
@@ -11453,21 +9706,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4399:1: rule__InnerDeclaration__Group__2 : rule__InnerDeclaration__Group__2__Impl rule__InnerDeclaration__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3696:1: rule__InnerDeclaration__Group__2 : rule__InnerDeclaration__Group__2__Impl rule__InnerDeclaration__Group__3 ;
     public final void rule__InnerDeclaration__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4403:1: ( rule__InnerDeclaration__Group__2__Impl rule__InnerDeclaration__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4404:2: rule__InnerDeclaration__Group__2__Impl rule__InnerDeclaration__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3700:1: ( rule__InnerDeclaration__Group__2__Impl rule__InnerDeclaration__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3701:2: rule__InnerDeclaration__Group__2__Impl rule__InnerDeclaration__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__2__Impl_in_rule__InnerDeclaration__Group__28781);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__2__Impl_in_rule__InnerDeclaration__Group__27413);
             rule__InnerDeclaration__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__3_in_rule__InnerDeclaration__Group__28784);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__3_in_rule__InnerDeclaration__Group__27416);
             rule__InnerDeclaration__Group__3();
 
             state._fsp--;
@@ -11491,20 +9744,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4411:1: rule__InnerDeclaration__Group__2__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3708:1: rule__InnerDeclaration__Group__2__Impl : ( '{' ) ;
     public final void rule__InnerDeclaration__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4415:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4416:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3712:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3713:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4416:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4417:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3713:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3714:1: '{'
             {
              before(grammarAccess.getInnerDeclarationAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__InnerDeclaration__Group__2__Impl8812); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__InnerDeclaration__Group__2__Impl7444); 
              after(grammarAccess.getInnerDeclarationAccess().getLeftCurlyBracketKeyword_2()); 
 
             }
@@ -11528,21 +9781,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4430:1: rule__InnerDeclaration__Group__3 : rule__InnerDeclaration__Group__3__Impl rule__InnerDeclaration__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3727:1: rule__InnerDeclaration__Group__3 : rule__InnerDeclaration__Group__3__Impl rule__InnerDeclaration__Group__4 ;
     public final void rule__InnerDeclaration__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4434:1: ( rule__InnerDeclaration__Group__3__Impl rule__InnerDeclaration__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4435:2: rule__InnerDeclaration__Group__3__Impl rule__InnerDeclaration__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3731:1: ( rule__InnerDeclaration__Group__3__Impl rule__InnerDeclaration__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3732:2: rule__InnerDeclaration__Group__3__Impl rule__InnerDeclaration__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__3__Impl_in_rule__InnerDeclaration__Group__38843);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__3__Impl_in_rule__InnerDeclaration__Group__37475);
             rule__InnerDeclaration__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__4_in_rule__InnerDeclaration__Group__38846);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__4_in_rule__InnerDeclaration__Group__37478);
             rule__InnerDeclaration__Group__4();
 
             state._fsp--;
@@ -11566,20 +9819,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4442:1: rule__InnerDeclaration__Group__3__Impl : ( 'dataType' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3739:1: rule__InnerDeclaration__Group__3__Impl : ( 'dataType' ) ;
     public final void rule__InnerDeclaration__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4446:1: ( ( 'dataType' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4447:1: ( 'dataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3743:1: ( ( 'dataType' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3744:1: ( 'dataType' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4447:1: ( 'dataType' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4448:1: 'dataType'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3744:1: ( 'dataType' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3745:1: 'dataType'
             {
              before(grammarAccess.getInnerDeclarationAccess().getDataTypeKeyword_3()); 
-            match(input,44,FollowSets000.FOLLOW_44_in_rule__InnerDeclaration__Group__3__Impl8874); 
+            match(input,41,FollowSets000.FOLLOW_41_in_rule__InnerDeclaration__Group__3__Impl7506); 
              after(grammarAccess.getInnerDeclarationAccess().getDataTypeKeyword_3()); 
 
             }
@@ -11603,21 +9856,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4461:1: rule__InnerDeclaration__Group__4 : rule__InnerDeclaration__Group__4__Impl rule__InnerDeclaration__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3758:1: rule__InnerDeclaration__Group__4 : rule__InnerDeclaration__Group__4__Impl rule__InnerDeclaration__Group__5 ;
     public final void rule__InnerDeclaration__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4465:1: ( rule__InnerDeclaration__Group__4__Impl rule__InnerDeclaration__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4466:2: rule__InnerDeclaration__Group__4__Impl rule__InnerDeclaration__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3762:1: ( rule__InnerDeclaration__Group__4__Impl rule__InnerDeclaration__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3763:2: rule__InnerDeclaration__Group__4__Impl rule__InnerDeclaration__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__4__Impl_in_rule__InnerDeclaration__Group__48905);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__4__Impl_in_rule__InnerDeclaration__Group__47537);
             rule__InnerDeclaration__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__5_in_rule__InnerDeclaration__Group__48908);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__5_in_rule__InnerDeclaration__Group__47540);
             rule__InnerDeclaration__Group__5();
 
             state._fsp--;
@@ -11641,23 +9894,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4473:1: rule__InnerDeclaration__Group__4__Impl : ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3770:1: rule__InnerDeclaration__Group__4__Impl : ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) ) ;
     public final void rule__InnerDeclaration__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4477:1: ( ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4478:1: ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3774:1: ( ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3775:1: ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4478:1: ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4479:1: ( rule__InnerDeclaration__DataTypeAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3775:1: ( ( rule__InnerDeclaration__DataTypeAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3776:1: ( rule__InnerDeclaration__DataTypeAssignment_4 )
             {
              before(grammarAccess.getInnerDeclarationAccess().getDataTypeAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4480:1: ( rule__InnerDeclaration__DataTypeAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4480:2: rule__InnerDeclaration__DataTypeAssignment_4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3777:1: ( rule__InnerDeclaration__DataTypeAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3777:2: rule__InnerDeclaration__DataTypeAssignment_4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__DataTypeAssignment_4_in_rule__InnerDeclaration__Group__4__Impl8935);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__DataTypeAssignment_4_in_rule__InnerDeclaration__Group__4__Impl7567);
             rule__InnerDeclaration__DataTypeAssignment_4();
 
             state._fsp--;
@@ -11688,16 +9941,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4490:1: rule__InnerDeclaration__Group__5 : rule__InnerDeclaration__Group__5__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3787:1: rule__InnerDeclaration__Group__5 : rule__InnerDeclaration__Group__5__Impl ;
     public final void rule__InnerDeclaration__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4494:1: ( rule__InnerDeclaration__Group__5__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4495:2: rule__InnerDeclaration__Group__5__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3791:1: ( rule__InnerDeclaration__Group__5__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3792:2: rule__InnerDeclaration__Group__5__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__5__Impl_in_rule__InnerDeclaration__Group__58965);
+            pushFollow(FollowSets000.FOLLOW_rule__InnerDeclaration__Group__5__Impl_in_rule__InnerDeclaration__Group__57597);
             rule__InnerDeclaration__Group__5__Impl();
 
             state._fsp--;
@@ -11721,20 +9974,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4501:1: rule__InnerDeclaration__Group__5__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3798:1: rule__InnerDeclaration__Group__5__Impl : ( '}' ) ;
     public final void rule__InnerDeclaration__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4505:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4506:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3802:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3803:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4506:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4507:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3803:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3804:1: '}'
             {
              before(grammarAccess.getInnerDeclarationAccess().getRightCurlyBracketKeyword_5()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__InnerDeclaration__Group__5__Impl8993); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__InnerDeclaration__Group__5__Impl7625); 
              after(grammarAccess.getInnerDeclarationAccess().getRightCurlyBracketKeyword_5()); 
 
             }
@@ -11758,21 +10011,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4532:1: rule__Signature__Group__0 : rule__Signature__Group__0__Impl rule__Signature__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3829:1: rule__Signature__Group__0 : rule__Signature__Group__0__Impl rule__Signature__Group__1 ;
     public final void rule__Signature__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4536:1: ( rule__Signature__Group__0__Impl rule__Signature__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4537:2: rule__Signature__Group__0__Impl rule__Signature__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3833:1: ( rule__Signature__Group__0__Impl rule__Signature__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3834:2: rule__Signature__Group__0__Impl rule__Signature__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__0__Impl_in_rule__Signature__Group__09036);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__0__Impl_in_rule__Signature__Group__07668);
             rule__Signature__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__1_in_rule__Signature__Group__09039);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__1_in_rule__Signature__Group__07671);
             rule__Signature__Group__1();
 
             state._fsp--;
@@ -11796,23 +10049,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4544:1: rule__Signature__Group__0__Impl : ( ( rule__Signature__Alternatives_0 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3841:1: rule__Signature__Group__0__Impl : ( ( rule__Signature__Alternatives_0 ) ) ;
     public final void rule__Signature__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4548:1: ( ( ( rule__Signature__Alternatives_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4549:1: ( ( rule__Signature__Alternatives_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3845:1: ( ( ( rule__Signature__Alternatives_0 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3846:1: ( ( rule__Signature__Alternatives_0 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4549:1: ( ( rule__Signature__Alternatives_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4550:1: ( rule__Signature__Alternatives_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3846:1: ( ( rule__Signature__Alternatives_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3847:1: ( rule__Signature__Alternatives_0 )
             {
              before(grammarAccess.getSignatureAccess().getAlternatives_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4551:1: ( rule__Signature__Alternatives_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4551:2: rule__Signature__Alternatives_0
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3848:1: ( rule__Signature__Alternatives_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3848:2: rule__Signature__Alternatives_0
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Alternatives_0_in_rule__Signature__Group__0__Impl9066);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Alternatives_0_in_rule__Signature__Group__0__Impl7698);
             rule__Signature__Alternatives_0();
 
             state._fsp--;
@@ -11843,21 +10096,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4561:1: rule__Signature__Group__1 : rule__Signature__Group__1__Impl rule__Signature__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3858:1: rule__Signature__Group__1 : rule__Signature__Group__1__Impl rule__Signature__Group__2 ;
     public final void rule__Signature__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4565:1: ( rule__Signature__Group__1__Impl rule__Signature__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4566:2: rule__Signature__Group__1__Impl rule__Signature__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3862:1: ( rule__Signature__Group__1__Impl rule__Signature__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3863:2: rule__Signature__Group__1__Impl rule__Signature__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__1__Impl_in_rule__Signature__Group__19096);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__1__Impl_in_rule__Signature__Group__17728);
             rule__Signature__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__2_in_rule__Signature__Group__19099);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__2_in_rule__Signature__Group__17731);
             rule__Signature__Group__2();
 
             state._fsp--;
@@ -11881,23 +10134,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4573:1: rule__Signature__Group__1__Impl : ( ( rule__Signature__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3870:1: rule__Signature__Group__1__Impl : ( ( rule__Signature__NameAssignment_1 ) ) ;
     public final void rule__Signature__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4577:1: ( ( ( rule__Signature__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4578:1: ( ( rule__Signature__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3874:1: ( ( ( rule__Signature__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3875:1: ( ( rule__Signature__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4578:1: ( ( rule__Signature__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4579:1: ( rule__Signature__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3875:1: ( ( rule__Signature__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3876:1: ( rule__Signature__NameAssignment_1 )
             {
              before(grammarAccess.getSignatureAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4580:1: ( rule__Signature__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4580:2: rule__Signature__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3877:1: ( rule__Signature__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3877:2: rule__Signature__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__NameAssignment_1_in_rule__Signature__Group__1__Impl9126);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__NameAssignment_1_in_rule__Signature__Group__1__Impl7758);
             rule__Signature__NameAssignment_1();
 
             state._fsp--;
@@ -11928,21 +10181,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4590:1: rule__Signature__Group__2 : rule__Signature__Group__2__Impl rule__Signature__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3887:1: rule__Signature__Group__2 : rule__Signature__Group__2__Impl rule__Signature__Group__3 ;
     public final void rule__Signature__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4594:1: ( rule__Signature__Group__2__Impl rule__Signature__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4595:2: rule__Signature__Group__2__Impl rule__Signature__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3891:1: ( rule__Signature__Group__2__Impl rule__Signature__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3892:2: rule__Signature__Group__2__Impl rule__Signature__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__2__Impl_in_rule__Signature__Group__29156);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__2__Impl_in_rule__Signature__Group__27788);
             rule__Signature__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__3_in_rule__Signature__Group__29159);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__3_in_rule__Signature__Group__27791);
             rule__Signature__Group__3();
 
             state._fsp--;
@@ -11966,20 +10219,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4602:1: rule__Signature__Group__2__Impl : ( '(' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3899:1: rule__Signature__Group__2__Impl : ( '(' ) ;
     public final void rule__Signature__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4606:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4607:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3903:1: ( ( '(' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3904:1: ( '(' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4607:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4608:1: '('
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3904:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3905:1: '('
             {
              before(grammarAccess.getSignatureAccess().getLeftParenthesisKeyword_2()); 
-            match(input,28,FollowSets000.FOLLOW_28_in_rule__Signature__Group__2__Impl9187); 
+            match(input,24,FollowSets000.FOLLOW_24_in_rule__Signature__Group__2__Impl7819); 
              after(grammarAccess.getSignatureAccess().getLeftParenthesisKeyword_2()); 
 
             }
@@ -12003,21 +10256,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4621:1: rule__Signature__Group__3 : rule__Signature__Group__3__Impl rule__Signature__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3918:1: rule__Signature__Group__3 : rule__Signature__Group__3__Impl rule__Signature__Group__4 ;
     public final void rule__Signature__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4625:1: ( rule__Signature__Group__3__Impl rule__Signature__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4626:2: rule__Signature__Group__3__Impl rule__Signature__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3922:1: ( rule__Signature__Group__3__Impl rule__Signature__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3923:2: rule__Signature__Group__3__Impl rule__Signature__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__3__Impl_in_rule__Signature__Group__39218);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__3__Impl_in_rule__Signature__Group__37850);
             rule__Signature__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__4_in_rule__Signature__Group__39221);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__4_in_rule__Signature__Group__37853);
             rule__Signature__Group__4();
 
             state._fsp--;
@@ -12041,31 +10294,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4633:1: rule__Signature__Group__3__Impl : ( ( rule__Signature__Group_3__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3930:1: rule__Signature__Group__3__Impl : ( ( rule__Signature__Group_3__0 )? ) ;
     public final void rule__Signature__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4637:1: ( ( ( rule__Signature__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4638:1: ( ( rule__Signature__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3934:1: ( ( ( rule__Signature__Group_3__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3935:1: ( ( rule__Signature__Group_3__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4638:1: ( ( rule__Signature__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4639:1: ( rule__Signature__Group_3__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3935:1: ( ( rule__Signature__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3936:1: ( rule__Signature__Group_3__0 )?
             {
              before(grammarAccess.getSignatureAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4640:1: ( rule__Signature__Group_3__0 )?
-            int alt26=2;
-            int LA26_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3937:1: ( rule__Signature__Group_3__0 )?
+            int alt22=2;
+            int LA22_0 = input.LA(1);
 
-            if ( ((LA26_0>=RULE_STRING && LA26_0<=RULE_ID)) ) {
-                alt26=1;
+            if ( ((LA22_0>=RULE_STRING && LA22_0<=RULE_ID)) ) {
+                alt22=1;
             }
-            switch (alt26) {
+            switch (alt22) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4640:2: rule__Signature__Group_3__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3937:2: rule__Signature__Group_3__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__0_in_rule__Signature__Group__3__Impl9248);
+                    pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__0_in_rule__Signature__Group__3__Impl7880);
                     rule__Signature__Group_3__0();
 
                     state._fsp--;
@@ -12099,16 +10352,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4650:1: rule__Signature__Group__4 : rule__Signature__Group__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3947:1: rule__Signature__Group__4 : rule__Signature__Group__4__Impl ;
     public final void rule__Signature__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4654:1: ( rule__Signature__Group__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4655:2: rule__Signature__Group__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3951:1: ( rule__Signature__Group__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3952:2: rule__Signature__Group__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__4__Impl_in_rule__Signature__Group__49279);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group__4__Impl_in_rule__Signature__Group__47911);
             rule__Signature__Group__4__Impl();
 
             state._fsp--;
@@ -12132,20 +10385,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4661:1: rule__Signature__Group__4__Impl : ( ')' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3958:1: rule__Signature__Group__4__Impl : ( ')' ) ;
     public final void rule__Signature__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4665:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4666:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3962:1: ( ( ')' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3963:1: ( ')' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4666:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4667:1: ')'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3963:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3964:1: ')'
             {
              before(grammarAccess.getSignatureAccess().getRightParenthesisKeyword_4()); 
-            match(input,29,FollowSets000.FOLLOW_29_in_rule__Signature__Group__4__Impl9307); 
+            match(input,25,FollowSets000.FOLLOW_25_in_rule__Signature__Group__4__Impl7939); 
              after(grammarAccess.getSignatureAccess().getRightParenthesisKeyword_4()); 
 
             }
@@ -12169,21 +10422,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4690:1: rule__Signature__Group_3__0 : rule__Signature__Group_3__0__Impl rule__Signature__Group_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3987:1: rule__Signature__Group_3__0 : rule__Signature__Group_3__0__Impl rule__Signature__Group_3__1 ;
     public final void rule__Signature__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4694:1: ( rule__Signature__Group_3__0__Impl rule__Signature__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4695:2: rule__Signature__Group_3__0__Impl rule__Signature__Group_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3991:1: ( rule__Signature__Group_3__0__Impl rule__Signature__Group_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3992:2: rule__Signature__Group_3__0__Impl rule__Signature__Group_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__0__Impl_in_rule__Signature__Group_3__09348);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__0__Impl_in_rule__Signature__Group_3__07980);
             rule__Signature__Group_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__1_in_rule__Signature__Group_3__09351);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__1_in_rule__Signature__Group_3__07983);
             rule__Signature__Group_3__1();
 
             state._fsp--;
@@ -12207,23 +10460,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4702:1: rule__Signature__Group_3__0__Impl : ( ( rule__Signature__ParametersAssignment_3_0 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:3999:1: rule__Signature__Group_3__0__Impl : ( ( rule__Signature__ParametersAssignment_3_0 ) ) ;
     public final void rule__Signature__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4706:1: ( ( ( rule__Signature__ParametersAssignment_3_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4707:1: ( ( rule__Signature__ParametersAssignment_3_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4003:1: ( ( ( rule__Signature__ParametersAssignment_3_0 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4004:1: ( ( rule__Signature__ParametersAssignment_3_0 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4707:1: ( ( rule__Signature__ParametersAssignment_3_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4708:1: ( rule__Signature__ParametersAssignment_3_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4004:1: ( ( rule__Signature__ParametersAssignment_3_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4005:1: ( rule__Signature__ParametersAssignment_3_0 )
             {
              before(grammarAccess.getSignatureAccess().getParametersAssignment_3_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4709:1: ( rule__Signature__ParametersAssignment_3_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4709:2: rule__Signature__ParametersAssignment_3_0
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4006:1: ( rule__Signature__ParametersAssignment_3_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4006:2: rule__Signature__ParametersAssignment_3_0
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__ParametersAssignment_3_0_in_rule__Signature__Group_3__0__Impl9378);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__ParametersAssignment_3_0_in_rule__Signature__Group_3__0__Impl8010);
             rule__Signature__ParametersAssignment_3_0();
 
             state._fsp--;
@@ -12254,16 +10507,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4719:1: rule__Signature__Group_3__1 : rule__Signature__Group_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4016:1: rule__Signature__Group_3__1 : rule__Signature__Group_3__1__Impl ;
     public final void rule__Signature__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4723:1: ( rule__Signature__Group_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4724:2: rule__Signature__Group_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4020:1: ( rule__Signature__Group_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4021:2: rule__Signature__Group_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__1__Impl_in_rule__Signature__Group_3__19408);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3__1__Impl_in_rule__Signature__Group_3__18040);
             rule__Signature__Group_3__1__Impl();
 
             state._fsp--;
@@ -12287,35 +10540,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4730:1: rule__Signature__Group_3__1__Impl : ( ( rule__Signature__Group_3_1__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4027:1: rule__Signature__Group_3__1__Impl : ( ( rule__Signature__Group_3_1__0 )* ) ;
     public final void rule__Signature__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4734:1: ( ( ( rule__Signature__Group_3_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4735:1: ( ( rule__Signature__Group_3_1__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4031:1: ( ( ( rule__Signature__Group_3_1__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4032:1: ( ( rule__Signature__Group_3_1__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4735:1: ( ( rule__Signature__Group_3_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4736:1: ( rule__Signature__Group_3_1__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4032:1: ( ( rule__Signature__Group_3_1__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4033:1: ( rule__Signature__Group_3_1__0 )*
             {
              before(grammarAccess.getSignatureAccess().getGroup_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4737:1: ( rule__Signature__Group_3_1__0 )*
-            loop27:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4034:1: ( rule__Signature__Group_3_1__0 )*
+            loop23:
             do {
-                int alt27=2;
-                int LA27_0 = input.LA(1);
+                int alt23=2;
+                int LA23_0 = input.LA(1);
 
-                if ( (LA27_0==23) ) {
-                    alt27=1;
+                if ( (LA23_0==26) ) {
+                    alt23=1;
                 }
 
 
-                switch (alt27) {
+                switch (alt23) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4737:2: rule__Signature__Group_3_1__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4034:2: rule__Signature__Group_3_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__0_in_rule__Signature__Group_3__1__Impl9435);
+            	    pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__0_in_rule__Signature__Group_3__1__Impl8067);
             	    rule__Signature__Group_3_1__0();
 
             	    state._fsp--;
@@ -12325,7 +10578,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop27;
+            	    break loop23;
                 }
             } while (true);
 
@@ -12352,21 +10605,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group_3_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4751:1: rule__Signature__Group_3_1__0 : rule__Signature__Group_3_1__0__Impl rule__Signature__Group_3_1__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4048:1: rule__Signature__Group_3_1__0 : rule__Signature__Group_3_1__0__Impl rule__Signature__Group_3_1__1 ;
     public final void rule__Signature__Group_3_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4755:1: ( rule__Signature__Group_3_1__0__Impl rule__Signature__Group_3_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4756:2: rule__Signature__Group_3_1__0__Impl rule__Signature__Group_3_1__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4052:1: ( rule__Signature__Group_3_1__0__Impl rule__Signature__Group_3_1__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4053:2: rule__Signature__Group_3_1__0__Impl rule__Signature__Group_3_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__0__Impl_in_rule__Signature__Group_3_1__09470);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__0__Impl_in_rule__Signature__Group_3_1__08102);
             rule__Signature__Group_3_1__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__1_in_rule__Signature__Group_3_1__09473);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__1_in_rule__Signature__Group_3_1__08105);
             rule__Signature__Group_3_1__1();
 
             state._fsp--;
@@ -12390,20 +10643,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group_3_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4763:1: rule__Signature__Group_3_1__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4060:1: rule__Signature__Group_3_1__0__Impl : ( ',' ) ;
     public final void rule__Signature__Group_3_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4767:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4768:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4064:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4065:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4768:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4769:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4065:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4066:1: ','
             {
              before(grammarAccess.getSignatureAccess().getCommaKeyword_3_1_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__Signature__Group_3_1__0__Impl9501); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__Signature__Group_3_1__0__Impl8133); 
              after(grammarAccess.getSignatureAccess().getCommaKeyword_3_1_0()); 
 
             }
@@ -12427,16 +10680,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group_3_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4782:1: rule__Signature__Group_3_1__1 : rule__Signature__Group_3_1__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4079:1: rule__Signature__Group_3_1__1 : rule__Signature__Group_3_1__1__Impl ;
     public final void rule__Signature__Group_3_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4786:1: ( rule__Signature__Group_3_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4787:2: rule__Signature__Group_3_1__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4083:1: ( rule__Signature__Group_3_1__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4084:2: rule__Signature__Group_3_1__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__1__Impl_in_rule__Signature__Group_3_1__19532);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__Group_3_1__1__Impl_in_rule__Signature__Group_3_1__18164);
             rule__Signature__Group_3_1__1__Impl();
 
             state._fsp--;
@@ -12460,23 +10713,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__Group_3_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4793:1: rule__Signature__Group_3_1__1__Impl : ( ( rule__Signature__ParametersAssignment_3_1_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4090:1: rule__Signature__Group_3_1__1__Impl : ( ( rule__Signature__ParametersAssignment_3_1_1 ) ) ;
     public final void rule__Signature__Group_3_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4797:1: ( ( ( rule__Signature__ParametersAssignment_3_1_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4798:1: ( ( rule__Signature__ParametersAssignment_3_1_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4094:1: ( ( ( rule__Signature__ParametersAssignment_3_1_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4095:1: ( ( rule__Signature__ParametersAssignment_3_1_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4798:1: ( ( rule__Signature__ParametersAssignment_3_1_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4799:1: ( rule__Signature__ParametersAssignment_3_1_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4095:1: ( ( rule__Signature__ParametersAssignment_3_1_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4096:1: ( rule__Signature__ParametersAssignment_3_1_1 )
             {
              before(grammarAccess.getSignatureAccess().getParametersAssignment_3_1_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4800:1: ( rule__Signature__ParametersAssignment_3_1_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4800:2: rule__Signature__ParametersAssignment_3_1_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4097:1: ( rule__Signature__ParametersAssignment_3_1_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4097:2: rule__Signature__ParametersAssignment_3_1_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Signature__ParametersAssignment_3_1_1_in_rule__Signature__Group_3_1__1__Impl9559);
+            pushFollow(FollowSets000.FOLLOW_rule__Signature__ParametersAssignment_3_1_1_in_rule__Signature__Group_3_1__1__Impl8191);
             rule__Signature__ParametersAssignment_3_1_1();
 
             state._fsp--;
@@ -12507,21 +10760,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Parameter__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4814:1: rule__Parameter__Group__0 : rule__Parameter__Group__0__Impl rule__Parameter__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4111:1: rule__Parameter__Group__0 : rule__Parameter__Group__0__Impl rule__Parameter__Group__1 ;
     public final void rule__Parameter__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4818:1: ( rule__Parameter__Group__0__Impl rule__Parameter__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4819:2: rule__Parameter__Group__0__Impl rule__Parameter__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4115:1: ( rule__Parameter__Group__0__Impl rule__Parameter__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4116:2: rule__Parameter__Group__0__Impl rule__Parameter__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Parameter__Group__0__Impl_in_rule__Parameter__Group__09593);
+            pushFollow(FollowSets000.FOLLOW_rule__Parameter__Group__0__Impl_in_rule__Parameter__Group__08225);
             rule__Parameter__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__Parameter__Group__1_in_rule__Parameter__Group__09596);
+            pushFollow(FollowSets000.FOLLOW_rule__Parameter__Group__1_in_rule__Parameter__Group__08228);
             rule__Parameter__Group__1();
 
             state._fsp--;
@@ -12545,23 +10798,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Parameter__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4826:1: rule__Parameter__Group__0__Impl : ( ( rule__Parameter__DataTypeAssignment_0 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4123:1: rule__Parameter__Group__0__Impl : ( ( rule__Parameter__DataTypeAssignment_0 ) ) ;
     public final void rule__Parameter__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4830:1: ( ( ( rule__Parameter__DataTypeAssignment_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4831:1: ( ( rule__Parameter__DataTypeAssignment_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4127:1: ( ( ( rule__Parameter__DataTypeAssignment_0 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4128:1: ( ( rule__Parameter__DataTypeAssignment_0 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4831:1: ( ( rule__Parameter__DataTypeAssignment_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4832:1: ( rule__Parameter__DataTypeAssignment_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4128:1: ( ( rule__Parameter__DataTypeAssignment_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4129:1: ( rule__Parameter__DataTypeAssignment_0 )
             {
              before(grammarAccess.getParameterAccess().getDataTypeAssignment_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4833:1: ( rule__Parameter__DataTypeAssignment_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4833:2: rule__Parameter__DataTypeAssignment_0
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4130:1: ( rule__Parameter__DataTypeAssignment_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4130:2: rule__Parameter__DataTypeAssignment_0
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Parameter__DataTypeAssignment_0_in_rule__Parameter__Group__0__Impl9623);
+            pushFollow(FollowSets000.FOLLOW_rule__Parameter__DataTypeAssignment_0_in_rule__Parameter__Group__0__Impl8255);
             rule__Parameter__DataTypeAssignment_0();
 
             state._fsp--;
@@ -12592,16 +10845,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Parameter__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4843:1: rule__Parameter__Group__1 : rule__Parameter__Group__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4140:1: rule__Parameter__Group__1 : rule__Parameter__Group__1__Impl ;
     public final void rule__Parameter__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4847:1: ( rule__Parameter__Group__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4848:2: rule__Parameter__Group__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4144:1: ( rule__Parameter__Group__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4145:2: rule__Parameter__Group__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Parameter__Group__1__Impl_in_rule__Parameter__Group__19653);
+            pushFollow(FollowSets000.FOLLOW_rule__Parameter__Group__1__Impl_in_rule__Parameter__Group__18285);
             rule__Parameter__Group__1__Impl();
 
             state._fsp--;
@@ -12625,23 +10878,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Parameter__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4854:1: rule__Parameter__Group__1__Impl : ( ( rule__Parameter__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4151:1: rule__Parameter__Group__1__Impl : ( ( rule__Parameter__NameAssignment_1 ) ) ;
     public final void rule__Parameter__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4858:1: ( ( ( rule__Parameter__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4859:1: ( ( rule__Parameter__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4155:1: ( ( ( rule__Parameter__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4156:1: ( ( rule__Parameter__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4859:1: ( ( rule__Parameter__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4860:1: ( rule__Parameter__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4156:1: ( ( rule__Parameter__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4157:1: ( rule__Parameter__NameAssignment_1 )
             {
              before(grammarAccess.getParameterAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4861:1: ( rule__Parameter__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4861:2: rule__Parameter__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4158:1: ( rule__Parameter__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4158:2: rule__Parameter__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__Parameter__NameAssignment_1_in_rule__Parameter__Group__1__Impl9680);
+            pushFollow(FollowSets000.FOLLOW_rule__Parameter__NameAssignment_1_in_rule__Parameter__Group__1__Impl8312);
             rule__Parameter__NameAssignment_1();
 
             state._fsp--;
@@ -12672,21 +10925,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedRole__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4875:1: rule__ProvidedRole__Group__0 : rule__ProvidedRole__Group__0__Impl rule__ProvidedRole__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4172:1: rule__ProvidedRole__Group__0 : rule__ProvidedRole__Group__0__Impl rule__ProvidedRole__Group__1 ;
     public final void rule__ProvidedRole__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4879:1: ( rule__ProvidedRole__Group__0__Impl rule__ProvidedRole__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4880:2: rule__ProvidedRole__Group__0__Impl rule__ProvidedRole__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4176:1: ( rule__ProvidedRole__Group__0__Impl rule__ProvidedRole__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4177:2: rule__ProvidedRole__Group__0__Impl rule__ProvidedRole__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__0__Impl_in_rule__ProvidedRole__Group__09714);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__0__Impl_in_rule__ProvidedRole__Group__08346);
             rule__ProvidedRole__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__1_in_rule__ProvidedRole__Group__09717);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__1_in_rule__ProvidedRole__Group__08349);
             rule__ProvidedRole__Group__1();
 
             state._fsp--;
@@ -12710,21 +10963,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedRole__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4887:1: rule__ProvidedRole__Group__0__Impl : ( () ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4184:1: rule__ProvidedRole__Group__0__Impl : ( () ) ;
     public final void rule__ProvidedRole__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4891:1: ( ( () ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4892:1: ( () )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4188:1: ( ( () ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4189:1: ( () )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4892:1: ( () )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4893:1: ()
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4189:1: ( () )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4190:1: ()
             {
              before(grammarAccess.getProvidedRoleAccess().getProvidedRoleAction_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4894:1: ()
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4896:1: 
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4191:1: ()
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4193:1: 
             {
             }
 
@@ -12747,21 +11000,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedRole__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4906:1: rule__ProvidedRole__Group__1 : rule__ProvidedRole__Group__1__Impl rule__ProvidedRole__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4203:1: rule__ProvidedRole__Group__1 : rule__ProvidedRole__Group__1__Impl rule__ProvidedRole__Group__2 ;
     public final void rule__ProvidedRole__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4910:1: ( rule__ProvidedRole__Group__1__Impl rule__ProvidedRole__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4911:2: rule__ProvidedRole__Group__1__Impl rule__ProvidedRole__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4207:1: ( rule__ProvidedRole__Group__1__Impl rule__ProvidedRole__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4208:2: rule__ProvidedRole__Group__1__Impl rule__ProvidedRole__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__1__Impl_in_rule__ProvidedRole__Group__19775);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__1__Impl_in_rule__ProvidedRole__Group__18407);
             rule__ProvidedRole__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__2_in_rule__ProvidedRole__Group__19778);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__2_in_rule__ProvidedRole__Group__18410);
             rule__ProvidedRole__Group__2();
 
             state._fsp--;
@@ -12785,21 +11038,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedRole__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4918:1: rule__ProvidedRole__Group__1__Impl : ( 'provides' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4215:1: rule__ProvidedRole__Group__1__Impl : ( 'ProvidedRole' ) ;
     public final void rule__ProvidedRole__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4922:1: ( ( 'provides' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4923:1: ( 'provides' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4219:1: ( ( 'ProvidedRole' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4220:1: ( 'ProvidedRole' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4923:1: ( 'provides' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4924:1: 'provides'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4220:1: ( 'ProvidedRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4221:1: 'ProvidedRole'
             {
-             before(grammarAccess.getProvidedRoleAccess().getProvidesKeyword_1()); 
-            match(input,45,FollowSets000.FOLLOW_45_in_rule__ProvidedRole__Group__1__Impl9806); 
-             after(grammarAccess.getProvidedRoleAccess().getProvidesKeyword_1()); 
+             before(grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_1()); 
+            match(input,42,FollowSets000.FOLLOW_42_in_rule__ProvidedRole__Group__1__Impl8438); 
+             after(grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_1()); 
 
             }
 
@@ -12822,16 +11075,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedRole__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4937:1: rule__ProvidedRole__Group__2 : rule__ProvidedRole__Group__2__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4234:1: rule__ProvidedRole__Group__2 : rule__ProvidedRole__Group__2__Impl ;
     public final void rule__ProvidedRole__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4941:1: ( rule__ProvidedRole__Group__2__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4942:2: rule__ProvidedRole__Group__2__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4238:1: ( rule__ProvidedRole__Group__2__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4239:2: rule__ProvidedRole__Group__2__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__2__Impl_in_rule__ProvidedRole__Group__29837);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group__2__Impl_in_rule__ProvidedRole__Group__28469);
             rule__ProvidedRole__Group__2__Impl();
 
             state._fsp--;
@@ -12855,35 +11108,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedRole__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4948:1: rule__ProvidedRole__Group__2__Impl : ( ( rule__ProvidedRole__Group_2__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4245:1: rule__ProvidedRole__Group__2__Impl : ( ( rule__ProvidedRole__Group_2__0 )* ) ;
     public final void rule__ProvidedRole__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4952:1: ( ( ( rule__ProvidedRole__Group_2__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4953:1: ( ( rule__ProvidedRole__Group_2__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4249:1: ( ( ( rule__ProvidedRole__Group_2__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4250:1: ( ( rule__ProvidedRole__Group_2__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4953:1: ( ( rule__ProvidedRole__Group_2__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4954:1: ( rule__ProvidedRole__Group_2__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4250:1: ( ( rule__ProvidedRole__Group_2__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4251:1: ( rule__ProvidedRole__Group_2__0 )*
             {
              before(grammarAccess.getProvidedRoleAccess().getGroup_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4955:1: ( rule__ProvidedRole__Group_2__0 )*
-            loop28:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4252:1: ( rule__ProvidedRole__Group_2__0 )*
+            loop24:
             do {
-                int alt28=2;
-                int LA28_0 = input.LA(1);
+                int alt24=2;
+                int LA24_0 = input.LA(1);
 
-                if ( ((LA28_0>=RULE_STRING && LA28_0<=RULE_ID)) ) {
-                    alt28=1;
+                if ( ((LA24_0>=RULE_STRING && LA24_0<=RULE_ID)) ) {
+                    alt24=1;
                 }
 
 
-                switch (alt28) {
+                switch (alt24) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4955:2: rule__ProvidedRole__Group_2__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4252:2: rule__ProvidedRole__Group_2__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group_2__0_in_rule__ProvidedRole__Group__2__Impl9864);
+            	    pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group_2__0_in_rule__ProvidedRole__Group__2__Impl8496);
             	    rule__ProvidedRole__Group_2__0();
 
             	    state._fsp--;
@@ -12893,7 +11146,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop28;
+            	    break loop24;
                 }
             } while (true);
 
@@ -12920,21 +11173,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedRole__Group_2__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4971:1: rule__ProvidedRole__Group_2__0 : rule__ProvidedRole__Group_2__0__Impl rule__ProvidedRole__Group_2__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4268:1: rule__ProvidedRole__Group_2__0 : rule__ProvidedRole__Group_2__0__Impl rule__ProvidedRole__Group_2__1 ;
     public final void rule__ProvidedRole__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4975:1: ( rule__ProvidedRole__Group_2__0__Impl rule__ProvidedRole__Group_2__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4976:2: rule__ProvidedRole__Group_2__0__Impl rule__ProvidedRole__Group_2__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4272:1: ( rule__ProvidedRole__Group_2__0__Impl rule__ProvidedRole__Group_2__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4273:2: rule__ProvidedRole__Group_2__0__Impl rule__ProvidedRole__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group_2__0__Impl_in_rule__ProvidedRole__Group_2__09901);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group_2__0__Impl_in_rule__ProvidedRole__Group_2__08533);
             rule__ProvidedRole__Group_2__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group_2__1_in_rule__ProvidedRole__Group_2__09904);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group_2__1_in_rule__ProvidedRole__Group_2__08536);
             rule__ProvidedRole__Group_2__1();
 
             state._fsp--;
@@ -12958,23 +11211,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedRole__Group_2__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4983:1: rule__ProvidedRole__Group_2__0__Impl : ( ( rule__ProvidedRole__InterfaceAssignment_2_0 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4280:1: rule__ProvidedRole__Group_2__0__Impl : ( ( rule__ProvidedRole__InterfaceAssignment_2_0 ) ) ;
     public final void rule__ProvidedRole__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4987:1: ( ( ( rule__ProvidedRole__InterfaceAssignment_2_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4988:1: ( ( rule__ProvidedRole__InterfaceAssignment_2_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4284:1: ( ( ( rule__ProvidedRole__InterfaceAssignment_2_0 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4285:1: ( ( rule__ProvidedRole__InterfaceAssignment_2_0 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4988:1: ( ( rule__ProvidedRole__InterfaceAssignment_2_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4989:1: ( rule__ProvidedRole__InterfaceAssignment_2_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4285:1: ( ( rule__ProvidedRole__InterfaceAssignment_2_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4286:1: ( rule__ProvidedRole__InterfaceAssignment_2_0 )
             {
              before(grammarAccess.getProvidedRoleAccess().getInterfaceAssignment_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4990:1: ( rule__ProvidedRole__InterfaceAssignment_2_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4990:2: rule__ProvidedRole__InterfaceAssignment_2_0
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4287:1: ( rule__ProvidedRole__InterfaceAssignment_2_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4287:2: rule__ProvidedRole__InterfaceAssignment_2_0
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__InterfaceAssignment_2_0_in_rule__ProvidedRole__Group_2__0__Impl9931);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__InterfaceAssignment_2_0_in_rule__ProvidedRole__Group_2__0__Impl8563);
             rule__ProvidedRole__InterfaceAssignment_2_0();
 
             state._fsp--;
@@ -13005,16 +11258,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedRole__Group_2__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5000:1: rule__ProvidedRole__Group_2__1 : rule__ProvidedRole__Group_2__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4297:1: rule__ProvidedRole__Group_2__1 : rule__ProvidedRole__Group_2__1__Impl ;
     public final void rule__ProvidedRole__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5004:1: ( rule__ProvidedRole__Group_2__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5005:2: rule__ProvidedRole__Group_2__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4301:1: ( rule__ProvidedRole__Group_2__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4302:2: rule__ProvidedRole__Group_2__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group_2__1__Impl_in_rule__ProvidedRole__Group_2__19961);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedRole__Group_2__1__Impl_in_rule__ProvidedRole__Group_2__18593);
             rule__ProvidedRole__Group_2__1__Impl();
 
             state._fsp--;
@@ -13038,35 +11291,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedRole__Group_2__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5011:1: rule__ProvidedRole__Group_2__1__Impl : ( ( ',' )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4308:1: rule__ProvidedRole__Group_2__1__Impl : ( ( ',' )? ) ;
     public final void rule__ProvidedRole__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5015:1: ( ( ( ',' )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5016:1: ( ( ',' )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4312:1: ( ( ( ',' )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4313:1: ( ( ',' )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5016:1: ( ( ',' )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5017:1: ( ',' )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4313:1: ( ( ',' )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4314:1: ( ',' )?
             {
              before(grammarAccess.getProvidedRoleAccess().getCommaKeyword_2_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5018:1: ( ',' )?
-            int alt29=2;
-            int LA29_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4315:1: ( ',' )?
+            int alt25=2;
+            int LA25_0 = input.LA(1);
 
-            if ( (LA29_0==23) ) {
-                int LA29_1 = input.LA(2);
+            if ( (LA25_0==26) ) {
+                int LA25_1 = input.LA(2);
 
-                if ( (LA29_1==EOF||(LA29_1>=RULE_STRING && LA29_1<=RULE_ID)||(LA29_1>=20 && LA29_1<=21)||LA29_1==23||LA29_1==46) ) {
-                    alt29=1;
+                if ( (LA25_1==EOF||(LA25_1>=RULE_STRING && LA25_1<=RULE_ID)||(LA25_1>=20 && LA25_1<=21)||LA25_1==26||LA25_1==43) ) {
+                    alt25=1;
                 }
             }
-            switch (alt29) {
+            switch (alt25) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5019:2: ','
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4316:2: ','
                     {
-                    match(input,23,FollowSets000.FOLLOW_23_in_rule__ProvidedRole__Group_2__1__Impl9990); 
+                    match(input,26,FollowSets000.FOLLOW_26_in_rule__ProvidedRole__Group_2__1__Impl8622); 
 
                     }
                     break;
@@ -13096,21 +11349,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredRole__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5034:1: rule__RequiredRole__Group__0 : rule__RequiredRole__Group__0__Impl rule__RequiredRole__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4331:1: rule__RequiredRole__Group__0 : rule__RequiredRole__Group__0__Impl rule__RequiredRole__Group__1 ;
     public final void rule__RequiredRole__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5038:1: ( rule__RequiredRole__Group__0__Impl rule__RequiredRole__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5039:2: rule__RequiredRole__Group__0__Impl rule__RequiredRole__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4335:1: ( rule__RequiredRole__Group__0__Impl rule__RequiredRole__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4336:2: rule__RequiredRole__Group__0__Impl rule__RequiredRole__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__0__Impl_in_rule__RequiredRole__Group__010027);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__0__Impl_in_rule__RequiredRole__Group__08659);
             rule__RequiredRole__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__1_in_rule__RequiredRole__Group__010030);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__1_in_rule__RequiredRole__Group__08662);
             rule__RequiredRole__Group__1();
 
             state._fsp--;
@@ -13134,21 +11387,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredRole__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5046:1: rule__RequiredRole__Group__0__Impl : ( () ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4343:1: rule__RequiredRole__Group__0__Impl : ( () ) ;
     public final void rule__RequiredRole__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5050:1: ( ( () ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5051:1: ( () )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4347:1: ( ( () ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4348:1: ( () )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5051:1: ( () )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5052:1: ()
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4348:1: ( () )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4349:1: ()
             {
              before(grammarAccess.getRequiredRoleAccess().getRequiredRoleAction_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5053:1: ()
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5055:1: 
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4350:1: ()
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4352:1: 
             {
             }
 
@@ -13171,21 +11424,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredRole__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5065:1: rule__RequiredRole__Group__1 : rule__RequiredRole__Group__1__Impl rule__RequiredRole__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4362:1: rule__RequiredRole__Group__1 : rule__RequiredRole__Group__1__Impl rule__RequiredRole__Group__2 ;
     public final void rule__RequiredRole__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5069:1: ( rule__RequiredRole__Group__1__Impl rule__RequiredRole__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5070:2: rule__RequiredRole__Group__1__Impl rule__RequiredRole__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4366:1: ( rule__RequiredRole__Group__1__Impl rule__RequiredRole__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4367:2: rule__RequiredRole__Group__1__Impl rule__RequiredRole__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__1__Impl_in_rule__RequiredRole__Group__110088);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__1__Impl_in_rule__RequiredRole__Group__18720);
             rule__RequiredRole__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__2_in_rule__RequiredRole__Group__110091);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__2_in_rule__RequiredRole__Group__18723);
             rule__RequiredRole__Group__2();
 
             state._fsp--;
@@ -13209,21 +11462,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredRole__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5077:1: rule__RequiredRole__Group__1__Impl : ( 'requires' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4374:1: rule__RequiredRole__Group__1__Impl : ( 'RequiredRole' ) ;
     public final void rule__RequiredRole__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5081:1: ( ( 'requires' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5082:1: ( 'requires' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4378:1: ( ( 'RequiredRole' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4379:1: ( 'RequiredRole' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5082:1: ( 'requires' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5083:1: 'requires'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4379:1: ( 'RequiredRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4380:1: 'RequiredRole'
             {
-             before(grammarAccess.getRequiredRoleAccess().getRequiresKeyword_1()); 
-            match(input,46,FollowSets000.FOLLOW_46_in_rule__RequiredRole__Group__1__Impl10119); 
-             after(grammarAccess.getRequiredRoleAccess().getRequiresKeyword_1()); 
+             before(grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_1()); 
+            match(input,43,FollowSets000.FOLLOW_43_in_rule__RequiredRole__Group__1__Impl8751); 
+             after(grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_1()); 
 
             }
 
@@ -13246,16 +11499,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredRole__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5096:1: rule__RequiredRole__Group__2 : rule__RequiredRole__Group__2__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4393:1: rule__RequiredRole__Group__2 : rule__RequiredRole__Group__2__Impl ;
     public final void rule__RequiredRole__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5100:1: ( rule__RequiredRole__Group__2__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5101:2: rule__RequiredRole__Group__2__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4397:1: ( rule__RequiredRole__Group__2__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4398:2: rule__RequiredRole__Group__2__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__2__Impl_in_rule__RequiredRole__Group__210150);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group__2__Impl_in_rule__RequiredRole__Group__28782);
             rule__RequiredRole__Group__2__Impl();
 
             state._fsp--;
@@ -13279,35 +11532,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredRole__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5107:1: rule__RequiredRole__Group__2__Impl : ( ( rule__RequiredRole__Group_2__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4404:1: rule__RequiredRole__Group__2__Impl : ( ( rule__RequiredRole__Group_2__0 )* ) ;
     public final void rule__RequiredRole__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5111:1: ( ( ( rule__RequiredRole__Group_2__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5112:1: ( ( rule__RequiredRole__Group_2__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4408:1: ( ( ( rule__RequiredRole__Group_2__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4409:1: ( ( rule__RequiredRole__Group_2__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5112:1: ( ( rule__RequiredRole__Group_2__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5113:1: ( rule__RequiredRole__Group_2__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4409:1: ( ( rule__RequiredRole__Group_2__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4410:1: ( rule__RequiredRole__Group_2__0 )*
             {
              before(grammarAccess.getRequiredRoleAccess().getGroup_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5114:1: ( rule__RequiredRole__Group_2__0 )*
-            loop30:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4411:1: ( rule__RequiredRole__Group_2__0 )*
+            loop26:
             do {
-                int alt30=2;
-                int LA30_0 = input.LA(1);
+                int alt26=2;
+                int LA26_0 = input.LA(1);
 
-                if ( ((LA30_0>=RULE_STRING && LA30_0<=RULE_ID)) ) {
-                    alt30=1;
+                if ( ((LA26_0>=RULE_STRING && LA26_0<=RULE_ID)) ) {
+                    alt26=1;
                 }
 
 
-                switch (alt30) {
+                switch (alt26) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5114:2: rule__RequiredRole__Group_2__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4411:2: rule__RequiredRole__Group_2__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group_2__0_in_rule__RequiredRole__Group__2__Impl10177);
+            	    pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group_2__0_in_rule__RequiredRole__Group__2__Impl8809);
             	    rule__RequiredRole__Group_2__0();
 
             	    state._fsp--;
@@ -13317,7 +11570,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop30;
+            	    break loop26;
                 }
             } while (true);
 
@@ -13344,21 +11597,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredRole__Group_2__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5130:1: rule__RequiredRole__Group_2__0 : rule__RequiredRole__Group_2__0__Impl rule__RequiredRole__Group_2__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4427:1: rule__RequiredRole__Group_2__0 : rule__RequiredRole__Group_2__0__Impl rule__RequiredRole__Group_2__1 ;
     public final void rule__RequiredRole__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5134:1: ( rule__RequiredRole__Group_2__0__Impl rule__RequiredRole__Group_2__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5135:2: rule__RequiredRole__Group_2__0__Impl rule__RequiredRole__Group_2__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4431:1: ( rule__RequiredRole__Group_2__0__Impl rule__RequiredRole__Group_2__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4432:2: rule__RequiredRole__Group_2__0__Impl rule__RequiredRole__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group_2__0__Impl_in_rule__RequiredRole__Group_2__010214);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group_2__0__Impl_in_rule__RequiredRole__Group_2__08846);
             rule__RequiredRole__Group_2__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group_2__1_in_rule__RequiredRole__Group_2__010217);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group_2__1_in_rule__RequiredRole__Group_2__08849);
             rule__RequiredRole__Group_2__1();
 
             state._fsp--;
@@ -13382,23 +11635,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredRole__Group_2__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5142:1: rule__RequiredRole__Group_2__0__Impl : ( ( rule__RequiredRole__InterfaceAssignment_2_0 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4439:1: rule__RequiredRole__Group_2__0__Impl : ( ( rule__RequiredRole__InterfaceAssignment_2_0 ) ) ;
     public final void rule__RequiredRole__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5146:1: ( ( ( rule__RequiredRole__InterfaceAssignment_2_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5147:1: ( ( rule__RequiredRole__InterfaceAssignment_2_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4443:1: ( ( ( rule__RequiredRole__InterfaceAssignment_2_0 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4444:1: ( ( rule__RequiredRole__InterfaceAssignment_2_0 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5147:1: ( ( rule__RequiredRole__InterfaceAssignment_2_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5148:1: ( rule__RequiredRole__InterfaceAssignment_2_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4444:1: ( ( rule__RequiredRole__InterfaceAssignment_2_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4445:1: ( rule__RequiredRole__InterfaceAssignment_2_0 )
             {
              before(grammarAccess.getRequiredRoleAccess().getInterfaceAssignment_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5149:1: ( rule__RequiredRole__InterfaceAssignment_2_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5149:2: rule__RequiredRole__InterfaceAssignment_2_0
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4446:1: ( rule__RequiredRole__InterfaceAssignment_2_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4446:2: rule__RequiredRole__InterfaceAssignment_2_0
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__InterfaceAssignment_2_0_in_rule__RequiredRole__Group_2__0__Impl10244);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__InterfaceAssignment_2_0_in_rule__RequiredRole__Group_2__0__Impl8876);
             rule__RequiredRole__InterfaceAssignment_2_0();
 
             state._fsp--;
@@ -13429,16 +11682,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredRole__Group_2__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5159:1: rule__RequiredRole__Group_2__1 : rule__RequiredRole__Group_2__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4456:1: rule__RequiredRole__Group_2__1 : rule__RequiredRole__Group_2__1__Impl ;
     public final void rule__RequiredRole__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5163:1: ( rule__RequiredRole__Group_2__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5164:2: rule__RequiredRole__Group_2__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4460:1: ( rule__RequiredRole__Group_2__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4461:2: rule__RequiredRole__Group_2__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group_2__1__Impl_in_rule__RequiredRole__Group_2__110274);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredRole__Group_2__1__Impl_in_rule__RequiredRole__Group_2__18906);
             rule__RequiredRole__Group_2__1__Impl();
 
             state._fsp--;
@@ -13462,35 +11715,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredRole__Group_2__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5170:1: rule__RequiredRole__Group_2__1__Impl : ( ( ',' )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4467:1: rule__RequiredRole__Group_2__1__Impl : ( ( ',' )? ) ;
     public final void rule__RequiredRole__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5174:1: ( ( ( ',' )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5175:1: ( ( ',' )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4471:1: ( ( ( ',' )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4472:1: ( ( ',' )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5175:1: ( ( ',' )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5176:1: ( ',' )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4472:1: ( ( ',' )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4473:1: ( ',' )?
             {
              before(grammarAccess.getRequiredRoleAccess().getCommaKeyword_2_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5177:1: ( ',' )?
-            int alt31=2;
-            int LA31_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4474:1: ( ',' )?
+            int alt27=2;
+            int LA27_0 = input.LA(1);
 
-            if ( (LA31_0==23) ) {
-                int LA31_1 = input.LA(2);
+            if ( (LA27_0==26) ) {
+                int LA27_1 = input.LA(2);
 
-                if ( (LA31_1==EOF||(LA31_1>=RULE_STRING && LA31_1<=RULE_ID)||(LA31_1>=20 && LA31_1<=21)||LA31_1==23) ) {
-                    alt31=1;
+                if ( (LA27_1==EOF||(LA27_1>=RULE_STRING && LA27_1<=RULE_ID)||(LA27_1>=20 && LA27_1<=21)||LA27_1==26) ) {
+                    alt27=1;
                 }
             }
-            switch (alt31) {
+            switch (alt27) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5178:2: ','
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4475:2: ','
                     {
-                    match(input,23,FollowSets000.FOLLOW_23_in_rule__RequiredRole__Group_2__1__Impl10303); 
+                    match(input,26,FollowSets000.FOLLOW_26_in_rule__RequiredRole__Group_2__1__Impl8935); 
 
                     }
                     break;
@@ -13520,21 +11773,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5193:1: rule__BasicComponent__Group__0 : rule__BasicComponent__Group__0__Impl rule__BasicComponent__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4490:1: rule__BasicComponent__Group__0 : rule__BasicComponent__Group__0__Impl rule__BasicComponent__Group__1 ;
     public final void rule__BasicComponent__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5197:1: ( rule__BasicComponent__Group__0__Impl rule__BasicComponent__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5198:2: rule__BasicComponent__Group__0__Impl rule__BasicComponent__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4494:1: ( rule__BasicComponent__Group__0__Impl rule__BasicComponent__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4495:2: rule__BasicComponent__Group__0__Impl rule__BasicComponent__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__0__Impl_in_rule__BasicComponent__Group__010340);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__0__Impl_in_rule__BasicComponent__Group__08972);
             rule__BasicComponent__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__1_in_rule__BasicComponent__Group__010343);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__1_in_rule__BasicComponent__Group__08975);
             rule__BasicComponent__Group__1();
 
             state._fsp--;
@@ -13558,20 +11811,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5205:1: rule__BasicComponent__Group__0__Impl : ( 'BasicComponent' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4502:1: rule__BasicComponent__Group__0__Impl : ( 'BasicComponent' ) ;
     public final void rule__BasicComponent__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5209:1: ( ( 'BasicComponent' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5210:1: ( 'BasicComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4506:1: ( ( 'BasicComponent' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4507:1: ( 'BasicComponent' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5210:1: ( 'BasicComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5211:1: 'BasicComponent'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4507:1: ( 'BasicComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4508:1: 'BasicComponent'
             {
              before(grammarAccess.getBasicComponentAccess().getBasicComponentKeyword_0()); 
-            match(input,47,FollowSets000.FOLLOW_47_in_rule__BasicComponent__Group__0__Impl10371); 
+            match(input,44,FollowSets000.FOLLOW_44_in_rule__BasicComponent__Group__0__Impl9003); 
              after(grammarAccess.getBasicComponentAccess().getBasicComponentKeyword_0()); 
 
             }
@@ -13595,21 +11848,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5224:1: rule__BasicComponent__Group__1 : rule__BasicComponent__Group__1__Impl rule__BasicComponent__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4521:1: rule__BasicComponent__Group__1 : rule__BasicComponent__Group__1__Impl rule__BasicComponent__Group__2 ;
     public final void rule__BasicComponent__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5228:1: ( rule__BasicComponent__Group__1__Impl rule__BasicComponent__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5229:2: rule__BasicComponent__Group__1__Impl rule__BasicComponent__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4525:1: ( rule__BasicComponent__Group__1__Impl rule__BasicComponent__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4526:2: rule__BasicComponent__Group__1__Impl rule__BasicComponent__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__1__Impl_in_rule__BasicComponent__Group__110402);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__1__Impl_in_rule__BasicComponent__Group__19034);
             rule__BasicComponent__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__2_in_rule__BasicComponent__Group__110405);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__2_in_rule__BasicComponent__Group__19037);
             rule__BasicComponent__Group__2();
 
             state._fsp--;
@@ -13633,23 +11886,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5236:1: rule__BasicComponent__Group__1__Impl : ( ( rule__BasicComponent__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4533:1: rule__BasicComponent__Group__1__Impl : ( ( rule__BasicComponent__NameAssignment_1 ) ) ;
     public final void rule__BasicComponent__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5240:1: ( ( ( rule__BasicComponent__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5241:1: ( ( rule__BasicComponent__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4537:1: ( ( ( rule__BasicComponent__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4538:1: ( ( rule__BasicComponent__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5241:1: ( ( rule__BasicComponent__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5242:1: ( rule__BasicComponent__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4538:1: ( ( rule__BasicComponent__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4539:1: ( rule__BasicComponent__NameAssignment_1 )
             {
              before(grammarAccess.getBasicComponentAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5243:1: ( rule__BasicComponent__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5243:2: rule__BasicComponent__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4540:1: ( rule__BasicComponent__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4540:2: rule__BasicComponent__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__NameAssignment_1_in_rule__BasicComponent__Group__1__Impl10432);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__NameAssignment_1_in_rule__BasicComponent__Group__1__Impl9064);
             rule__BasicComponent__NameAssignment_1();
 
             state._fsp--;
@@ -13680,21 +11933,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5253:1: rule__BasicComponent__Group__2 : rule__BasicComponent__Group__2__Impl rule__BasicComponent__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4550:1: rule__BasicComponent__Group__2 : rule__BasicComponent__Group__2__Impl rule__BasicComponent__Group__3 ;
     public final void rule__BasicComponent__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5257:1: ( rule__BasicComponent__Group__2__Impl rule__BasicComponent__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5258:2: rule__BasicComponent__Group__2__Impl rule__BasicComponent__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4554:1: ( rule__BasicComponent__Group__2__Impl rule__BasicComponent__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4555:2: rule__BasicComponent__Group__2__Impl rule__BasicComponent__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__2__Impl_in_rule__BasicComponent__Group__210462);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__2__Impl_in_rule__BasicComponent__Group__29094);
             rule__BasicComponent__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__3_in_rule__BasicComponent__Group__210465);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__3_in_rule__BasicComponent__Group__29097);
             rule__BasicComponent__Group__3();
 
             state._fsp--;
@@ -13718,31 +11971,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5265:1: rule__BasicComponent__Group__2__Impl : ( ( rule__BasicComponent__Group_2__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4562:1: rule__BasicComponent__Group__2__Impl : ( ( rule__BasicComponent__Group_2__0 )? ) ;
     public final void rule__BasicComponent__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5269:1: ( ( ( rule__BasicComponent__Group_2__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5270:1: ( ( rule__BasicComponent__Group_2__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4566:1: ( ( ( rule__BasicComponent__Group_2__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4567:1: ( ( rule__BasicComponent__Group_2__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5270:1: ( ( rule__BasicComponent__Group_2__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5271:1: ( rule__BasicComponent__Group_2__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4567:1: ( ( rule__BasicComponent__Group_2__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4568:1: ( rule__BasicComponent__Group_2__0 )?
             {
              before(grammarAccess.getBasicComponentAccess().getGroup_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5272:1: ( rule__BasicComponent__Group_2__0 )?
-            int alt32=2;
-            int LA32_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4569:1: ( rule__BasicComponent__Group_2__0 )?
+            int alt28=2;
+            int LA28_0 = input.LA(1);
 
-            if ( (LA32_0==45) ) {
-                alt32=1;
+            if ( (LA28_0==42) ) {
+                alt28=1;
             }
-            switch (alt32) {
+            switch (alt28) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5272:2: rule__BasicComponent__Group_2__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4569:2: rule__BasicComponent__Group_2__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__0_in_rule__BasicComponent__Group__2__Impl10492);
+                    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__0_in_rule__BasicComponent__Group__2__Impl9124);
                     rule__BasicComponent__Group_2__0();
 
                     state._fsp--;
@@ -13776,21 +12029,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5282:1: rule__BasicComponent__Group__3 : rule__BasicComponent__Group__3__Impl rule__BasicComponent__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4579:1: rule__BasicComponent__Group__3 : rule__BasicComponent__Group__3__Impl rule__BasicComponent__Group__4 ;
     public final void rule__BasicComponent__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5286:1: ( rule__BasicComponent__Group__3__Impl rule__BasicComponent__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5287:2: rule__BasicComponent__Group__3__Impl rule__BasicComponent__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4583:1: ( rule__BasicComponent__Group__3__Impl rule__BasicComponent__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4584:2: rule__BasicComponent__Group__3__Impl rule__BasicComponent__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__3__Impl_in_rule__BasicComponent__Group__310523);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__3__Impl_in_rule__BasicComponent__Group__39155);
             rule__BasicComponent__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__4_in_rule__BasicComponent__Group__310526);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__4_in_rule__BasicComponent__Group__39158);
             rule__BasicComponent__Group__4();
 
             state._fsp--;
@@ -13814,31 +12067,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5294:1: rule__BasicComponent__Group__3__Impl : ( ( rule__BasicComponent__Group_3__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4591:1: rule__BasicComponent__Group__3__Impl : ( ( rule__BasicComponent__Group_3__0 )? ) ;
     public final void rule__BasicComponent__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5298:1: ( ( ( rule__BasicComponent__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5299:1: ( ( rule__BasicComponent__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4595:1: ( ( ( rule__BasicComponent__Group_3__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4596:1: ( ( rule__BasicComponent__Group_3__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5299:1: ( ( rule__BasicComponent__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5300:1: ( rule__BasicComponent__Group_3__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4596:1: ( ( rule__BasicComponent__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4597:1: ( rule__BasicComponent__Group_3__0 )?
             {
              before(grammarAccess.getBasicComponentAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5301:1: ( rule__BasicComponent__Group_3__0 )?
-            int alt33=2;
-            int LA33_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4598:1: ( rule__BasicComponent__Group_3__0 )?
+            int alt29=2;
+            int LA29_0 = input.LA(1);
 
-            if ( (LA33_0==46) ) {
-                alt33=1;
+            if ( (LA29_0==43) ) {
+                alt29=1;
             }
-            switch (alt33) {
+            switch (alt29) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5301:2: rule__BasicComponent__Group_3__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4598:2: rule__BasicComponent__Group_3__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__0_in_rule__BasicComponent__Group__3__Impl10553);
+                    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__0_in_rule__BasicComponent__Group__3__Impl9185);
                     rule__BasicComponent__Group_3__0();
 
                     state._fsp--;
@@ -13872,21 +12125,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5311:1: rule__BasicComponent__Group__4 : rule__BasicComponent__Group__4__Impl rule__BasicComponent__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4608:1: rule__BasicComponent__Group__4 : rule__BasicComponent__Group__4__Impl rule__BasicComponent__Group__5 ;
     public final void rule__BasicComponent__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5315:1: ( rule__BasicComponent__Group__4__Impl rule__BasicComponent__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5316:2: rule__BasicComponent__Group__4__Impl rule__BasicComponent__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4612:1: ( rule__BasicComponent__Group__4__Impl rule__BasicComponent__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4613:2: rule__BasicComponent__Group__4__Impl rule__BasicComponent__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__4__Impl_in_rule__BasicComponent__Group__410584);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__4__Impl_in_rule__BasicComponent__Group__49216);
             rule__BasicComponent__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__5_in_rule__BasicComponent__Group__410587);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__5_in_rule__BasicComponent__Group__49219);
             rule__BasicComponent__Group__5();
 
             state._fsp--;
@@ -13910,20 +12163,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5323:1: rule__BasicComponent__Group__4__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4620:1: rule__BasicComponent__Group__4__Impl : ( '{' ) ;
     public final void rule__BasicComponent__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5327:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5328:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4624:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4625:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5328:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5329:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4625:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4626:1: '{'
             {
              before(grammarAccess.getBasicComponentAccess().getLeftCurlyBracketKeyword_4()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__BasicComponent__Group__4__Impl10615); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__BasicComponent__Group__4__Impl9247); 
              after(grammarAccess.getBasicComponentAccess().getLeftCurlyBracketKeyword_4()); 
 
             }
@@ -13947,21 +12200,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5342:1: rule__BasicComponent__Group__5 : rule__BasicComponent__Group__5__Impl rule__BasicComponent__Group__6 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4639:1: rule__BasicComponent__Group__5 : rule__BasicComponent__Group__5__Impl rule__BasicComponent__Group__6 ;
     public final void rule__BasicComponent__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5346:1: ( rule__BasicComponent__Group__5__Impl rule__BasicComponent__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5347:2: rule__BasicComponent__Group__5__Impl rule__BasicComponent__Group__6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4643:1: ( rule__BasicComponent__Group__5__Impl rule__BasicComponent__Group__6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4644:2: rule__BasicComponent__Group__5__Impl rule__BasicComponent__Group__6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__5__Impl_in_rule__BasicComponent__Group__510646);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__5__Impl_in_rule__BasicComponent__Group__59278);
             rule__BasicComponent__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__6_in_rule__BasicComponent__Group__510649);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__6_in_rule__BasicComponent__Group__59281);
             rule__BasicComponent__Group__6();
 
             state._fsp--;
@@ -13985,31 +12238,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5354:1: rule__BasicComponent__Group__5__Impl : ( ( rule__BasicComponent__Group_5__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4651:1: rule__BasicComponent__Group__5__Impl : ( ( rule__BasicComponent__Group_5__0 )? ) ;
     public final void rule__BasicComponent__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5358:1: ( ( ( rule__BasicComponent__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5359:1: ( ( rule__BasicComponent__Group_5__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4655:1: ( ( ( rule__BasicComponent__Group_5__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4656:1: ( ( rule__BasicComponent__Group_5__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5359:1: ( ( rule__BasicComponent__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5360:1: ( rule__BasicComponent__Group_5__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4656:1: ( ( rule__BasicComponent__Group_5__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4657:1: ( rule__BasicComponent__Group_5__0 )?
             {
              before(grammarAccess.getBasicComponentAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5361:1: ( rule__BasicComponent__Group_5__0 )?
-            int alt34=2;
-            int LA34_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4658:1: ( rule__BasicComponent__Group_5__0 )?
+            int alt30=2;
+            int LA30_0 = input.LA(1);
 
-            if ( (LA34_0==32) ) {
-                alt34=1;
+            if ( (LA30_0==29) ) {
+                alt30=1;
             }
-            switch (alt34) {
+            switch (alt30) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5361:2: rule__BasicComponent__Group_5__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4658:2: rule__BasicComponent__Group_5__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__0_in_rule__BasicComponent__Group__5__Impl10676);
+                    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__0_in_rule__BasicComponent__Group__5__Impl9308);
                     rule__BasicComponent__Group_5__0();
 
                     state._fsp--;
@@ -14043,16 +12296,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5371:1: rule__BasicComponent__Group__6 : rule__BasicComponent__Group__6__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4668:1: rule__BasicComponent__Group__6 : rule__BasicComponent__Group__6__Impl ;
     public final void rule__BasicComponent__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5375:1: ( rule__BasicComponent__Group__6__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5376:2: rule__BasicComponent__Group__6__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4672:1: ( rule__BasicComponent__Group__6__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4673:2: rule__BasicComponent__Group__6__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__6__Impl_in_rule__BasicComponent__Group__610707);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group__6__Impl_in_rule__BasicComponent__Group__69339);
             rule__BasicComponent__Group__6__Impl();
 
             state._fsp--;
@@ -14076,20 +12329,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5382:1: rule__BasicComponent__Group__6__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4679:1: rule__BasicComponent__Group__6__Impl : ( '}' ) ;
     public final void rule__BasicComponent__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5386:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5387:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4683:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4684:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5387:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5388:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4684:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4685:1: '}'
             {
              before(grammarAccess.getBasicComponentAccess().getRightCurlyBracketKeyword_6()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__BasicComponent__Group__6__Impl10735); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__BasicComponent__Group__6__Impl9367); 
              after(grammarAccess.getBasicComponentAccess().getRightCurlyBracketKeyword_6()); 
 
             }
@@ -14113,21 +12366,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_2__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5415:1: rule__BasicComponent__Group_2__0 : rule__BasicComponent__Group_2__0__Impl rule__BasicComponent__Group_2__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4712:1: rule__BasicComponent__Group_2__0 : rule__BasicComponent__Group_2__0__Impl rule__BasicComponent__Group_2__1 ;
     public final void rule__BasicComponent__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5419:1: ( rule__BasicComponent__Group_2__0__Impl rule__BasicComponent__Group_2__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5420:2: rule__BasicComponent__Group_2__0__Impl rule__BasicComponent__Group_2__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4716:1: ( rule__BasicComponent__Group_2__0__Impl rule__BasicComponent__Group_2__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4717:2: rule__BasicComponent__Group_2__0__Impl rule__BasicComponent__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__0__Impl_in_rule__BasicComponent__Group_2__010780);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__0__Impl_in_rule__BasicComponent__Group_2__09412);
             rule__BasicComponent__Group_2__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__1_in_rule__BasicComponent__Group_2__010783);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__1_in_rule__BasicComponent__Group_2__09415);
             rule__BasicComponent__Group_2__1();
 
             state._fsp--;
@@ -14151,23 +12404,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_2__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5427:1: rule__BasicComponent__Group_2__0__Impl : ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4724:1: rule__BasicComponent__Group_2__0__Impl : ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) ) ;
     public final void rule__BasicComponent__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5431:1: ( ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5432:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4728:1: ( ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4729:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5432:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5433:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4729:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4730:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_0 )
             {
              before(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5434:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5434:2: rule__BasicComponent__ProvidedRolesAssignment_2_0
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4731:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4731:2: rule__BasicComponent__ProvidedRolesAssignment_2_0
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_0_in_rule__BasicComponent__Group_2__0__Impl10810);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_0_in_rule__BasicComponent__Group_2__0__Impl9442);
             rule__BasicComponent__ProvidedRolesAssignment_2_0();
 
             state._fsp--;
@@ -14198,16 +12451,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_2__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5444:1: rule__BasicComponent__Group_2__1 : rule__BasicComponent__Group_2__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4741:1: rule__BasicComponent__Group_2__1 : rule__BasicComponent__Group_2__1__Impl ;
     public final void rule__BasicComponent__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5448:1: ( rule__BasicComponent__Group_2__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5449:2: rule__BasicComponent__Group_2__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4745:1: ( rule__BasicComponent__Group_2__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4746:2: rule__BasicComponent__Group_2__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__1__Impl_in_rule__BasicComponent__Group_2__110840);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2__1__Impl_in_rule__BasicComponent__Group_2__19472);
             rule__BasicComponent__Group_2__1__Impl();
 
             state._fsp--;
@@ -14231,35 +12484,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_2__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5455:1: rule__BasicComponent__Group_2__1__Impl : ( ( rule__BasicComponent__Group_2_1__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4752:1: rule__BasicComponent__Group_2__1__Impl : ( ( rule__BasicComponent__Group_2_1__0 )* ) ;
     public final void rule__BasicComponent__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5459:1: ( ( ( rule__BasicComponent__Group_2_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5460:1: ( ( rule__BasicComponent__Group_2_1__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4756:1: ( ( ( rule__BasicComponent__Group_2_1__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4757:1: ( ( rule__BasicComponent__Group_2_1__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5460:1: ( ( rule__BasicComponent__Group_2_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5461:1: ( rule__BasicComponent__Group_2_1__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4757:1: ( ( rule__BasicComponent__Group_2_1__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4758:1: ( rule__BasicComponent__Group_2_1__0 )*
             {
              before(grammarAccess.getBasicComponentAccess().getGroup_2_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5462:1: ( rule__BasicComponent__Group_2_1__0 )*
-            loop35:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4759:1: ( rule__BasicComponent__Group_2_1__0 )*
+            loop31:
             do {
-                int alt35=2;
-                int LA35_0 = input.LA(1);
+                int alt31=2;
+                int LA31_0 = input.LA(1);
 
-                if ( (LA35_0==23) ) {
-                    alt35=1;
+                if ( (LA31_0==26) ) {
+                    alt31=1;
                 }
 
 
-                switch (alt35) {
+                switch (alt31) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5462:2: rule__BasicComponent__Group_2_1__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4759:2: rule__BasicComponent__Group_2_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__0_in_rule__BasicComponent__Group_2__1__Impl10867);
+            	    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__0_in_rule__BasicComponent__Group_2__1__Impl9499);
             	    rule__BasicComponent__Group_2_1__0();
 
             	    state._fsp--;
@@ -14269,7 +12522,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop35;
+            	    break loop31;
                 }
             } while (true);
 
@@ -14296,21 +12549,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_2_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5476:1: rule__BasicComponent__Group_2_1__0 : rule__BasicComponent__Group_2_1__0__Impl rule__BasicComponent__Group_2_1__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4773:1: rule__BasicComponent__Group_2_1__0 : rule__BasicComponent__Group_2_1__0__Impl rule__BasicComponent__Group_2_1__1 ;
     public final void rule__BasicComponent__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5480:1: ( rule__BasicComponent__Group_2_1__0__Impl rule__BasicComponent__Group_2_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5481:2: rule__BasicComponent__Group_2_1__0__Impl rule__BasicComponent__Group_2_1__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4777:1: ( rule__BasicComponent__Group_2_1__0__Impl rule__BasicComponent__Group_2_1__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4778:2: rule__BasicComponent__Group_2_1__0__Impl rule__BasicComponent__Group_2_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__0__Impl_in_rule__BasicComponent__Group_2_1__010902);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__0__Impl_in_rule__BasicComponent__Group_2_1__09534);
             rule__BasicComponent__Group_2_1__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__1_in_rule__BasicComponent__Group_2_1__010905);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__1_in_rule__BasicComponent__Group_2_1__09537);
             rule__BasicComponent__Group_2_1__1();
 
             state._fsp--;
@@ -14334,20 +12587,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_2_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5488:1: rule__BasicComponent__Group_2_1__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4785:1: rule__BasicComponent__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__BasicComponent__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5492:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5493:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4789:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4790:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5493:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5494:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4790:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4791:1: ','
             {
              before(grammarAccess.getBasicComponentAccess().getCommaKeyword_2_1_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__BasicComponent__Group_2_1__0__Impl10933); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__BasicComponent__Group_2_1__0__Impl9565); 
              after(grammarAccess.getBasicComponentAccess().getCommaKeyword_2_1_0()); 
 
             }
@@ -14371,16 +12624,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_2_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5507:1: rule__BasicComponent__Group_2_1__1 : rule__BasicComponent__Group_2_1__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4804:1: rule__BasicComponent__Group_2_1__1 : rule__BasicComponent__Group_2_1__1__Impl ;
     public final void rule__BasicComponent__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5511:1: ( rule__BasicComponent__Group_2_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5512:2: rule__BasicComponent__Group_2_1__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4808:1: ( rule__BasicComponent__Group_2_1__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4809:2: rule__BasicComponent__Group_2_1__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__1__Impl_in_rule__BasicComponent__Group_2_1__110964);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_2_1__1__Impl_in_rule__BasicComponent__Group_2_1__19596);
             rule__BasicComponent__Group_2_1__1__Impl();
 
             state._fsp--;
@@ -14404,23 +12657,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_2_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5518:1: rule__BasicComponent__Group_2_1__1__Impl : ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4815:1: rule__BasicComponent__Group_2_1__1__Impl : ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) ) ;
     public final void rule__BasicComponent__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5522:1: ( ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5523:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4819:1: ( ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4820:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5523:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5524:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4820:1: ( ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4821:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 )
             {
              before(grammarAccess.getBasicComponentAccess().getProvidedRolesAssignment_2_1_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5525:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5525:2: rule__BasicComponent__ProvidedRolesAssignment_2_1_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4822:1: ( rule__BasicComponent__ProvidedRolesAssignment_2_1_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4822:2: rule__BasicComponent__ProvidedRolesAssignment_2_1_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_1_1_in_rule__BasicComponent__Group_2_1__1__Impl10991);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_1_1_in_rule__BasicComponent__Group_2_1__1__Impl9623);
             rule__BasicComponent__ProvidedRolesAssignment_2_1_1();
 
             state._fsp--;
@@ -14451,21 +12704,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5539:1: rule__BasicComponent__Group_3__0 : rule__BasicComponent__Group_3__0__Impl rule__BasicComponent__Group_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4836:1: rule__BasicComponent__Group_3__0 : rule__BasicComponent__Group_3__0__Impl rule__BasicComponent__Group_3__1 ;
     public final void rule__BasicComponent__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5543:1: ( rule__BasicComponent__Group_3__0__Impl rule__BasicComponent__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5544:2: rule__BasicComponent__Group_3__0__Impl rule__BasicComponent__Group_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4840:1: ( rule__BasicComponent__Group_3__0__Impl rule__BasicComponent__Group_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4841:2: rule__BasicComponent__Group_3__0__Impl rule__BasicComponent__Group_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__0__Impl_in_rule__BasicComponent__Group_3__011025);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__0__Impl_in_rule__BasicComponent__Group_3__09657);
             rule__BasicComponent__Group_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__1_in_rule__BasicComponent__Group_3__011028);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__1_in_rule__BasicComponent__Group_3__09660);
             rule__BasicComponent__Group_3__1();
 
             state._fsp--;
@@ -14489,23 +12742,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5551:1: rule__BasicComponent__Group_3__0__Impl : ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4848:1: rule__BasicComponent__Group_3__0__Impl : ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) ) ;
     public final void rule__BasicComponent__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5555:1: ( ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5556:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4852:1: ( ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4853:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5556:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5557:1: ( rule__BasicComponent__RequiredRolesAssignment_3_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4853:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4854:1: ( rule__BasicComponent__RequiredRolesAssignment_3_0 )
             {
              before(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5558:1: ( rule__BasicComponent__RequiredRolesAssignment_3_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5558:2: rule__BasicComponent__RequiredRolesAssignment_3_0
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4855:1: ( rule__BasicComponent__RequiredRolesAssignment_3_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4855:2: rule__BasicComponent__RequiredRolesAssignment_3_0
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_0_in_rule__BasicComponent__Group_3__0__Impl11055);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_0_in_rule__BasicComponent__Group_3__0__Impl9687);
             rule__BasicComponent__RequiredRolesAssignment_3_0();
 
             state._fsp--;
@@ -14536,16 +12789,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5568:1: rule__BasicComponent__Group_3__1 : rule__BasicComponent__Group_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4865:1: rule__BasicComponent__Group_3__1 : rule__BasicComponent__Group_3__1__Impl ;
     public final void rule__BasicComponent__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5572:1: ( rule__BasicComponent__Group_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5573:2: rule__BasicComponent__Group_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4869:1: ( rule__BasicComponent__Group_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4870:2: rule__BasicComponent__Group_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__1__Impl_in_rule__BasicComponent__Group_3__111085);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3__1__Impl_in_rule__BasicComponent__Group_3__19717);
             rule__BasicComponent__Group_3__1__Impl();
 
             state._fsp--;
@@ -14569,35 +12822,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5579:1: rule__BasicComponent__Group_3__1__Impl : ( ( rule__BasicComponent__Group_3_1__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4876:1: rule__BasicComponent__Group_3__1__Impl : ( ( rule__BasicComponent__Group_3_1__0 )* ) ;
     public final void rule__BasicComponent__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5583:1: ( ( ( rule__BasicComponent__Group_3_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5584:1: ( ( rule__BasicComponent__Group_3_1__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4880:1: ( ( ( rule__BasicComponent__Group_3_1__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4881:1: ( ( rule__BasicComponent__Group_3_1__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5584:1: ( ( rule__BasicComponent__Group_3_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5585:1: ( rule__BasicComponent__Group_3_1__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4881:1: ( ( rule__BasicComponent__Group_3_1__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4882:1: ( rule__BasicComponent__Group_3_1__0 )*
             {
              before(grammarAccess.getBasicComponentAccess().getGroup_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5586:1: ( rule__BasicComponent__Group_3_1__0 )*
-            loop36:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4883:1: ( rule__BasicComponent__Group_3_1__0 )*
+            loop32:
             do {
-                int alt36=2;
-                int LA36_0 = input.LA(1);
+                int alt32=2;
+                int LA32_0 = input.LA(1);
 
-                if ( (LA36_0==23) ) {
-                    alt36=1;
+                if ( (LA32_0==26) ) {
+                    alt32=1;
                 }
 
 
-                switch (alt36) {
+                switch (alt32) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5586:2: rule__BasicComponent__Group_3_1__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4883:2: rule__BasicComponent__Group_3_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__0_in_rule__BasicComponent__Group_3__1__Impl11112);
+            	    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__0_in_rule__BasicComponent__Group_3__1__Impl9744);
             	    rule__BasicComponent__Group_3_1__0();
 
             	    state._fsp--;
@@ -14607,7 +12860,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop36;
+            	    break loop32;
                 }
             } while (true);
 
@@ -14634,21 +12887,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_3_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5600:1: rule__BasicComponent__Group_3_1__0 : rule__BasicComponent__Group_3_1__0__Impl rule__BasicComponent__Group_3_1__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4897:1: rule__BasicComponent__Group_3_1__0 : rule__BasicComponent__Group_3_1__0__Impl rule__BasicComponent__Group_3_1__1 ;
     public final void rule__BasicComponent__Group_3_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5604:1: ( rule__BasicComponent__Group_3_1__0__Impl rule__BasicComponent__Group_3_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5605:2: rule__BasicComponent__Group_3_1__0__Impl rule__BasicComponent__Group_3_1__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4901:1: ( rule__BasicComponent__Group_3_1__0__Impl rule__BasicComponent__Group_3_1__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4902:2: rule__BasicComponent__Group_3_1__0__Impl rule__BasicComponent__Group_3_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__0__Impl_in_rule__BasicComponent__Group_3_1__011147);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__0__Impl_in_rule__BasicComponent__Group_3_1__09779);
             rule__BasicComponent__Group_3_1__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__1_in_rule__BasicComponent__Group_3_1__011150);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__1_in_rule__BasicComponent__Group_3_1__09782);
             rule__BasicComponent__Group_3_1__1();
 
             state._fsp--;
@@ -14672,20 +12925,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_3_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5612:1: rule__BasicComponent__Group_3_1__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4909:1: rule__BasicComponent__Group_3_1__0__Impl : ( ',' ) ;
     public final void rule__BasicComponent__Group_3_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5616:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5617:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4913:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4914:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5617:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5618:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4914:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4915:1: ','
             {
              before(grammarAccess.getBasicComponentAccess().getCommaKeyword_3_1_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__BasicComponent__Group_3_1__0__Impl11178); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__BasicComponent__Group_3_1__0__Impl9810); 
              after(grammarAccess.getBasicComponentAccess().getCommaKeyword_3_1_0()); 
 
             }
@@ -14709,16 +12962,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_3_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5631:1: rule__BasicComponent__Group_3_1__1 : rule__BasicComponent__Group_3_1__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4928:1: rule__BasicComponent__Group_3_1__1 : rule__BasicComponent__Group_3_1__1__Impl ;
     public final void rule__BasicComponent__Group_3_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5635:1: ( rule__BasicComponent__Group_3_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5636:2: rule__BasicComponent__Group_3_1__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4932:1: ( rule__BasicComponent__Group_3_1__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4933:2: rule__BasicComponent__Group_3_1__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__1__Impl_in_rule__BasicComponent__Group_3_1__111209);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_3_1__1__Impl_in_rule__BasicComponent__Group_3_1__19841);
             rule__BasicComponent__Group_3_1__1__Impl();
 
             state._fsp--;
@@ -14742,23 +12995,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_3_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5642:1: rule__BasicComponent__Group_3_1__1__Impl : ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4939:1: rule__BasicComponent__Group_3_1__1__Impl : ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) ) ;
     public final void rule__BasicComponent__Group_3_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5646:1: ( ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5647:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4943:1: ( ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4944:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5647:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5648:1: ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4944:1: ( ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4945:1: ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 )
             {
              before(grammarAccess.getBasicComponentAccess().getRequiredRolesAssignment_3_1_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5649:1: ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5649:2: rule__BasicComponent__RequiredRolesAssignment_3_1_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4946:1: ( rule__BasicComponent__RequiredRolesAssignment_3_1_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4946:2: rule__BasicComponent__RequiredRolesAssignment_3_1_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_1_1_in_rule__BasicComponent__Group_3_1__1__Impl11236);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_1_1_in_rule__BasicComponent__Group_3_1__1__Impl9868);
             rule__BasicComponent__RequiredRolesAssignment_3_1_1();
 
             state._fsp--;
@@ -14789,21 +13042,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5663:1: rule__BasicComponent__Group_5__0 : rule__BasicComponent__Group_5__0__Impl rule__BasicComponent__Group_5__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4960:1: rule__BasicComponent__Group_5__0 : rule__BasicComponent__Group_5__0__Impl rule__BasicComponent__Group_5__1 ;
     public final void rule__BasicComponent__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5667:1: ( rule__BasicComponent__Group_5__0__Impl rule__BasicComponent__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5668:2: rule__BasicComponent__Group_5__0__Impl rule__BasicComponent__Group_5__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4964:1: ( rule__BasicComponent__Group_5__0__Impl rule__BasicComponent__Group_5__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4965:2: rule__BasicComponent__Group_5__0__Impl rule__BasicComponent__Group_5__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__0__Impl_in_rule__BasicComponent__Group_5__011270);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__0__Impl_in_rule__BasicComponent__Group_5__09902);
             rule__BasicComponent__Group_5__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__1_in_rule__BasicComponent__Group_5__011273);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__1_in_rule__BasicComponent__Group_5__09905);
             rule__BasicComponent__Group_5__1();
 
             state._fsp--;
@@ -14827,20 +13080,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5675:1: rule__BasicComponent__Group_5__0__Impl : ( 'relationship' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4972:1: rule__BasicComponent__Group_5__0__Impl : ( 'relationship' ) ;
     public final void rule__BasicComponent__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5679:1: ( ( 'relationship' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5680:1: ( 'relationship' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4976:1: ( ( 'relationship' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4977:1: ( 'relationship' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5680:1: ( 'relationship' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5681:1: 'relationship'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4977:1: ( 'relationship' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4978:1: 'relationship'
             {
              before(grammarAccess.getBasicComponentAccess().getRelationshipKeyword_5_0()); 
-            match(input,32,FollowSets000.FOLLOW_32_in_rule__BasicComponent__Group_5__0__Impl11301); 
+            match(input,29,FollowSets000.FOLLOW_29_in_rule__BasicComponent__Group_5__0__Impl9933); 
              after(grammarAccess.getBasicComponentAccess().getRelationshipKeyword_5_0()); 
 
             }
@@ -14864,21 +13117,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5694:1: rule__BasicComponent__Group_5__1 : rule__BasicComponent__Group_5__1__Impl rule__BasicComponent__Group_5__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4991:1: rule__BasicComponent__Group_5__1 : rule__BasicComponent__Group_5__1__Impl rule__BasicComponent__Group_5__2 ;
     public final void rule__BasicComponent__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5698:1: ( rule__BasicComponent__Group_5__1__Impl rule__BasicComponent__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5699:2: rule__BasicComponent__Group_5__1__Impl rule__BasicComponent__Group_5__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4995:1: ( rule__BasicComponent__Group_5__1__Impl rule__BasicComponent__Group_5__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:4996:2: rule__BasicComponent__Group_5__1__Impl rule__BasicComponent__Group_5__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__1__Impl_in_rule__BasicComponent__Group_5__111332);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__1__Impl_in_rule__BasicComponent__Group_5__19964);
             rule__BasicComponent__Group_5__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__2_in_rule__BasicComponent__Group_5__111335);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__2_in_rule__BasicComponent__Group_5__19967);
             rule__BasicComponent__Group_5__2();
 
             state._fsp--;
@@ -14902,20 +13155,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5706:1: rule__BasicComponent__Group_5__1__Impl : ( '(' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5003:1: rule__BasicComponent__Group_5__1__Impl : ( '(' ) ;
     public final void rule__BasicComponent__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5710:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5711:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5007:1: ( ( '(' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5008:1: ( '(' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5711:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5712:1: '('
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5008:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5009:1: '('
             {
              before(grammarAccess.getBasicComponentAccess().getLeftParenthesisKeyword_5_1()); 
-            match(input,28,FollowSets000.FOLLOW_28_in_rule__BasicComponent__Group_5__1__Impl11363); 
+            match(input,24,FollowSets000.FOLLOW_24_in_rule__BasicComponent__Group_5__1__Impl9995); 
              after(grammarAccess.getBasicComponentAccess().getLeftParenthesisKeyword_5_1()); 
 
             }
@@ -14939,21 +13192,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5725:1: rule__BasicComponent__Group_5__2 : rule__BasicComponent__Group_5__2__Impl rule__BasicComponent__Group_5__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5022:1: rule__BasicComponent__Group_5__2 : rule__BasicComponent__Group_5__2__Impl rule__BasicComponent__Group_5__3 ;
     public final void rule__BasicComponent__Group_5__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5729:1: ( rule__BasicComponent__Group_5__2__Impl rule__BasicComponent__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5730:2: rule__BasicComponent__Group_5__2__Impl rule__BasicComponent__Group_5__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5026:1: ( rule__BasicComponent__Group_5__2__Impl rule__BasicComponent__Group_5__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5027:2: rule__BasicComponent__Group_5__2__Impl rule__BasicComponent__Group_5__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__2__Impl_in_rule__BasicComponent__Group_5__211394);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__2__Impl_in_rule__BasicComponent__Group_5__210026);
             rule__BasicComponent__Group_5__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__3_in_rule__BasicComponent__Group_5__211397);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__3_in_rule__BasicComponent__Group_5__210029);
             rule__BasicComponent__Group_5__3();
 
             state._fsp--;
@@ -14977,23 +13230,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5737:1: rule__BasicComponent__Group_5__2__Impl : ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5034:1: rule__BasicComponent__Group_5__2__Impl : ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) ) ;
     public final void rule__BasicComponent__Group_5__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5741:1: ( ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5742:1: ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5038:1: ( ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5039:1: ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5742:1: ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5743:1: ( rule__BasicComponent__RelationshipAssignment_5_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5039:1: ( ( rule__BasicComponent__RelationshipAssignment_5_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5040:1: ( rule__BasicComponent__RelationshipAssignment_5_2 )
             {
              before(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5744:1: ( rule__BasicComponent__RelationshipAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5744:2: rule__BasicComponent__RelationshipAssignment_5_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5041:1: ( rule__BasicComponent__RelationshipAssignment_5_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5041:2: rule__BasicComponent__RelationshipAssignment_5_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RelationshipAssignment_5_2_in_rule__BasicComponent__Group_5__2__Impl11424);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RelationshipAssignment_5_2_in_rule__BasicComponent__Group_5__2__Impl10056);
             rule__BasicComponent__RelationshipAssignment_5_2();
 
             state._fsp--;
@@ -15024,21 +13277,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5754:1: rule__BasicComponent__Group_5__3 : rule__BasicComponent__Group_5__3__Impl rule__BasicComponent__Group_5__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5051:1: rule__BasicComponent__Group_5__3 : rule__BasicComponent__Group_5__3__Impl rule__BasicComponent__Group_5__4 ;
     public final void rule__BasicComponent__Group_5__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5758:1: ( rule__BasicComponent__Group_5__3__Impl rule__BasicComponent__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5759:2: rule__BasicComponent__Group_5__3__Impl rule__BasicComponent__Group_5__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5055:1: ( rule__BasicComponent__Group_5__3__Impl rule__BasicComponent__Group_5__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5056:2: rule__BasicComponent__Group_5__3__Impl rule__BasicComponent__Group_5__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__3__Impl_in_rule__BasicComponent__Group_5__311454);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__3__Impl_in_rule__BasicComponent__Group_5__310086);
             rule__BasicComponent__Group_5__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__4_in_rule__BasicComponent__Group_5__311457);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__4_in_rule__BasicComponent__Group_5__310089);
             rule__BasicComponent__Group_5__4();
 
             state._fsp--;
@@ -15062,35 +13315,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5766:1: rule__BasicComponent__Group_5__3__Impl : ( ( rule__BasicComponent__Group_5_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5063:1: rule__BasicComponent__Group_5__3__Impl : ( ( rule__BasicComponent__Group_5_3__0 )* ) ;
     public final void rule__BasicComponent__Group_5__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5770:1: ( ( ( rule__BasicComponent__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5771:1: ( ( rule__BasicComponent__Group_5_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5067:1: ( ( ( rule__BasicComponent__Group_5_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5068:1: ( ( rule__BasicComponent__Group_5_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5771:1: ( ( rule__BasicComponent__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5772:1: ( rule__BasicComponent__Group_5_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5068:1: ( ( rule__BasicComponent__Group_5_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5069:1: ( rule__BasicComponent__Group_5_3__0 )*
             {
              before(grammarAccess.getBasicComponentAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5773:1: ( rule__BasicComponent__Group_5_3__0 )*
-            loop37:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5070:1: ( rule__BasicComponent__Group_5_3__0 )*
+            loop33:
             do {
-                int alt37=2;
-                int LA37_0 = input.LA(1);
+                int alt33=2;
+                int LA33_0 = input.LA(1);
 
-                if ( (LA37_0==23) ) {
-                    alt37=1;
+                if ( (LA33_0==26) ) {
+                    alt33=1;
                 }
 
 
-                switch (alt37) {
+                switch (alt33) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5773:2: rule__BasicComponent__Group_5_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5070:2: rule__BasicComponent__Group_5_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__0_in_rule__BasicComponent__Group_5__3__Impl11484);
+            	    pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__0_in_rule__BasicComponent__Group_5__3__Impl10116);
             	    rule__BasicComponent__Group_5_3__0();
 
             	    state._fsp--;
@@ -15100,7 +13353,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop37;
+            	    break loop33;
                 }
             } while (true);
 
@@ -15127,16 +13380,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5783:1: rule__BasicComponent__Group_5__4 : rule__BasicComponent__Group_5__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5080:1: rule__BasicComponent__Group_5__4 : rule__BasicComponent__Group_5__4__Impl ;
     public final void rule__BasicComponent__Group_5__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5787:1: ( rule__BasicComponent__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5788:2: rule__BasicComponent__Group_5__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5084:1: ( rule__BasicComponent__Group_5__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5085:2: rule__BasicComponent__Group_5__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__4__Impl_in_rule__BasicComponent__Group_5__411515);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5__4__Impl_in_rule__BasicComponent__Group_5__410147);
             rule__BasicComponent__Group_5__4__Impl();
 
             state._fsp--;
@@ -15160,20 +13413,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5794:1: rule__BasicComponent__Group_5__4__Impl : ( ')' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5091:1: rule__BasicComponent__Group_5__4__Impl : ( ')' ) ;
     public final void rule__BasicComponent__Group_5__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5798:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5799:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5095:1: ( ( ')' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5096:1: ( ')' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5799:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5800:1: ')'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5096:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5097:1: ')'
             {
              before(grammarAccess.getBasicComponentAccess().getRightParenthesisKeyword_5_4()); 
-            match(input,29,FollowSets000.FOLLOW_29_in_rule__BasicComponent__Group_5__4__Impl11543); 
+            match(input,25,FollowSets000.FOLLOW_25_in_rule__BasicComponent__Group_5__4__Impl10175); 
              after(grammarAccess.getBasicComponentAccess().getRightParenthesisKeyword_5_4()); 
 
             }
@@ -15197,21 +13450,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5823:1: rule__BasicComponent__Group_5_3__0 : rule__BasicComponent__Group_5_3__0__Impl rule__BasicComponent__Group_5_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5120:1: rule__BasicComponent__Group_5_3__0 : rule__BasicComponent__Group_5_3__0__Impl rule__BasicComponent__Group_5_3__1 ;
     public final void rule__BasicComponent__Group_5_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5827:1: ( rule__BasicComponent__Group_5_3__0__Impl rule__BasicComponent__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5828:2: rule__BasicComponent__Group_5_3__0__Impl rule__BasicComponent__Group_5_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5124:1: ( rule__BasicComponent__Group_5_3__0__Impl rule__BasicComponent__Group_5_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5125:2: rule__BasicComponent__Group_5_3__0__Impl rule__BasicComponent__Group_5_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__0__Impl_in_rule__BasicComponent__Group_5_3__011584);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__0__Impl_in_rule__BasicComponent__Group_5_3__010216);
             rule__BasicComponent__Group_5_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__1_in_rule__BasicComponent__Group_5_3__011587);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__1_in_rule__BasicComponent__Group_5_3__010219);
             rule__BasicComponent__Group_5_3__1();
 
             state._fsp--;
@@ -15235,20 +13488,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5835:1: rule__BasicComponent__Group_5_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5132:1: rule__BasicComponent__Group_5_3__0__Impl : ( ',' ) ;
     public final void rule__BasicComponent__Group_5_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5839:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5840:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5136:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5137:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5840:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5841:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5137:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5138:1: ','
             {
              before(grammarAccess.getBasicComponentAccess().getCommaKeyword_5_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__BasicComponent__Group_5_3__0__Impl11615); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__BasicComponent__Group_5_3__0__Impl10247); 
              after(grammarAccess.getBasicComponentAccess().getCommaKeyword_5_3_0()); 
 
             }
@@ -15272,16 +13525,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5854:1: rule__BasicComponent__Group_5_3__1 : rule__BasicComponent__Group_5_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5151:1: rule__BasicComponent__Group_5_3__1 : rule__BasicComponent__Group_5_3__1__Impl ;
     public final void rule__BasicComponent__Group_5_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5858:1: ( rule__BasicComponent__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5859:2: rule__BasicComponent__Group_5_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5155:1: ( rule__BasicComponent__Group_5_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5156:2: rule__BasicComponent__Group_5_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__1__Impl_in_rule__BasicComponent__Group_5_3__111646);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__Group_5_3__1__Impl_in_rule__BasicComponent__Group_5_3__110278);
             rule__BasicComponent__Group_5_3__1__Impl();
 
             state._fsp--;
@@ -15305,23 +13558,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5865:1: rule__BasicComponent__Group_5_3__1__Impl : ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5162:1: rule__BasicComponent__Group_5_3__1__Impl : ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) ) ;
     public final void rule__BasicComponent__Group_5_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5869:1: ( ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5870:1: ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5166:1: ( ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5167:1: ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5870:1: ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5871:1: ( rule__BasicComponent__RelationshipAssignment_5_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5167:1: ( ( rule__BasicComponent__RelationshipAssignment_5_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5168:1: ( rule__BasicComponent__RelationshipAssignment_5_3_1 )
             {
              before(grammarAccess.getBasicComponentAccess().getRelationshipAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5872:1: ( rule__BasicComponent__RelationshipAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5872:2: rule__BasicComponent__RelationshipAssignment_5_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5169:1: ( rule__BasicComponent__RelationshipAssignment_5_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5169:2: rule__BasicComponent__RelationshipAssignment_5_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RelationshipAssignment_5_3_1_in_rule__BasicComponent__Group_5_3__1__Impl11673);
+            pushFollow(FollowSets000.FOLLOW_rule__BasicComponent__RelationshipAssignment_5_3_1_in_rule__BasicComponent__Group_5_3__1__Impl10305);
             rule__BasicComponent__RelationshipAssignment_5_3_1();
 
             state._fsp--;
@@ -15352,21 +13605,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5886:1: rule__CompositeComponent__Group__0 : rule__CompositeComponent__Group__0__Impl rule__CompositeComponent__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5183:1: rule__CompositeComponent__Group__0 : rule__CompositeComponent__Group__0__Impl rule__CompositeComponent__Group__1 ;
     public final void rule__CompositeComponent__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5890:1: ( rule__CompositeComponent__Group__0__Impl rule__CompositeComponent__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5891:2: rule__CompositeComponent__Group__0__Impl rule__CompositeComponent__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5187:1: ( rule__CompositeComponent__Group__0__Impl rule__CompositeComponent__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5188:2: rule__CompositeComponent__Group__0__Impl rule__CompositeComponent__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__0__Impl_in_rule__CompositeComponent__Group__011707);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__0__Impl_in_rule__CompositeComponent__Group__010339);
             rule__CompositeComponent__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__1_in_rule__CompositeComponent__Group__011710);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__1_in_rule__CompositeComponent__Group__010342);
             rule__CompositeComponent__Group__1();
 
             state._fsp--;
@@ -15390,20 +13643,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5898:1: rule__CompositeComponent__Group__0__Impl : ( 'CompositeComponent' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5195:1: rule__CompositeComponent__Group__0__Impl : ( 'CompositeComponent' ) ;
     public final void rule__CompositeComponent__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5902:1: ( ( 'CompositeComponent' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5903:1: ( 'CompositeComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5199:1: ( ( 'CompositeComponent' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5200:1: ( 'CompositeComponent' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5903:1: ( 'CompositeComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5904:1: 'CompositeComponent'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5200:1: ( 'CompositeComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5201:1: 'CompositeComponent'
             {
              before(grammarAccess.getCompositeComponentAccess().getCompositeComponentKeyword_0()); 
-            match(input,48,FollowSets000.FOLLOW_48_in_rule__CompositeComponent__Group__0__Impl11738); 
+            match(input,45,FollowSets000.FOLLOW_45_in_rule__CompositeComponent__Group__0__Impl10370); 
              after(grammarAccess.getCompositeComponentAccess().getCompositeComponentKeyword_0()); 
 
             }
@@ -15427,21 +13680,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5917:1: rule__CompositeComponent__Group__1 : rule__CompositeComponent__Group__1__Impl rule__CompositeComponent__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5214:1: rule__CompositeComponent__Group__1 : rule__CompositeComponent__Group__1__Impl rule__CompositeComponent__Group__2 ;
     public final void rule__CompositeComponent__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5921:1: ( rule__CompositeComponent__Group__1__Impl rule__CompositeComponent__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5922:2: rule__CompositeComponent__Group__1__Impl rule__CompositeComponent__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5218:1: ( rule__CompositeComponent__Group__1__Impl rule__CompositeComponent__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5219:2: rule__CompositeComponent__Group__1__Impl rule__CompositeComponent__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__1__Impl_in_rule__CompositeComponent__Group__111769);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__1__Impl_in_rule__CompositeComponent__Group__110401);
             rule__CompositeComponent__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__2_in_rule__CompositeComponent__Group__111772);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__2_in_rule__CompositeComponent__Group__110404);
             rule__CompositeComponent__Group__2();
 
             state._fsp--;
@@ -15465,23 +13718,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5929:1: rule__CompositeComponent__Group__1__Impl : ( ( rule__CompositeComponent__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5226:1: rule__CompositeComponent__Group__1__Impl : ( ( rule__CompositeComponent__NameAssignment_1 ) ) ;
     public final void rule__CompositeComponent__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5933:1: ( ( ( rule__CompositeComponent__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5934:1: ( ( rule__CompositeComponent__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5230:1: ( ( ( rule__CompositeComponent__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5231:1: ( ( rule__CompositeComponent__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5934:1: ( ( rule__CompositeComponent__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5935:1: ( rule__CompositeComponent__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5231:1: ( ( rule__CompositeComponent__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5232:1: ( rule__CompositeComponent__NameAssignment_1 )
             {
              before(grammarAccess.getCompositeComponentAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5936:1: ( rule__CompositeComponent__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5936:2: rule__CompositeComponent__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5233:1: ( rule__CompositeComponent__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5233:2: rule__CompositeComponent__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__NameAssignment_1_in_rule__CompositeComponent__Group__1__Impl11799);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__NameAssignment_1_in_rule__CompositeComponent__Group__1__Impl10431);
             rule__CompositeComponent__NameAssignment_1();
 
             state._fsp--;
@@ -15512,21 +13765,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5946:1: rule__CompositeComponent__Group__2 : rule__CompositeComponent__Group__2__Impl rule__CompositeComponent__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5243:1: rule__CompositeComponent__Group__2 : rule__CompositeComponent__Group__2__Impl rule__CompositeComponent__Group__3 ;
     public final void rule__CompositeComponent__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5950:1: ( rule__CompositeComponent__Group__2__Impl rule__CompositeComponent__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5951:2: rule__CompositeComponent__Group__2__Impl rule__CompositeComponent__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5247:1: ( rule__CompositeComponent__Group__2__Impl rule__CompositeComponent__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5248:2: rule__CompositeComponent__Group__2__Impl rule__CompositeComponent__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__2__Impl_in_rule__CompositeComponent__Group__211829);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__2__Impl_in_rule__CompositeComponent__Group__210461);
             rule__CompositeComponent__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__3_in_rule__CompositeComponent__Group__211832);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__3_in_rule__CompositeComponent__Group__210464);
             rule__CompositeComponent__Group__3();
 
             state._fsp--;
@@ -15550,31 +13803,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5958:1: rule__CompositeComponent__Group__2__Impl : ( ( rule__CompositeComponent__Group_2__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5255:1: rule__CompositeComponent__Group__2__Impl : ( ( rule__CompositeComponent__Group_2__0 )? ) ;
     public final void rule__CompositeComponent__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5962:1: ( ( ( rule__CompositeComponent__Group_2__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5963:1: ( ( rule__CompositeComponent__Group_2__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5259:1: ( ( ( rule__CompositeComponent__Group_2__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5260:1: ( ( rule__CompositeComponent__Group_2__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5963:1: ( ( rule__CompositeComponent__Group_2__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5964:1: ( rule__CompositeComponent__Group_2__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5260:1: ( ( rule__CompositeComponent__Group_2__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5261:1: ( rule__CompositeComponent__Group_2__0 )?
             {
              before(grammarAccess.getCompositeComponentAccess().getGroup_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5965:1: ( rule__CompositeComponent__Group_2__0 )?
-            int alt38=2;
-            int LA38_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5262:1: ( rule__CompositeComponent__Group_2__0 )?
+            int alt34=2;
+            int LA34_0 = input.LA(1);
 
-            if ( (LA38_0==45) ) {
-                alt38=1;
+            if ( (LA34_0==42) ) {
+                alt34=1;
             }
-            switch (alt38) {
+            switch (alt34) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5965:2: rule__CompositeComponent__Group_2__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5262:2: rule__CompositeComponent__Group_2__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__0_in_rule__CompositeComponent__Group__2__Impl11859);
+                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__0_in_rule__CompositeComponent__Group__2__Impl10491);
                     rule__CompositeComponent__Group_2__0();
 
                     state._fsp--;
@@ -15608,21 +13861,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5975:1: rule__CompositeComponent__Group__3 : rule__CompositeComponent__Group__3__Impl rule__CompositeComponent__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5272:1: rule__CompositeComponent__Group__3 : rule__CompositeComponent__Group__3__Impl rule__CompositeComponent__Group__4 ;
     public final void rule__CompositeComponent__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5979:1: ( rule__CompositeComponent__Group__3__Impl rule__CompositeComponent__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5980:2: rule__CompositeComponent__Group__3__Impl rule__CompositeComponent__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5276:1: ( rule__CompositeComponent__Group__3__Impl rule__CompositeComponent__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5277:2: rule__CompositeComponent__Group__3__Impl rule__CompositeComponent__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__3__Impl_in_rule__CompositeComponent__Group__311890);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__3__Impl_in_rule__CompositeComponent__Group__310522);
             rule__CompositeComponent__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__4_in_rule__CompositeComponent__Group__311893);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__4_in_rule__CompositeComponent__Group__310525);
             rule__CompositeComponent__Group__4();
 
             state._fsp--;
@@ -15646,31 +13899,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5987:1: rule__CompositeComponent__Group__3__Impl : ( ( rule__CompositeComponent__Group_3__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5284:1: rule__CompositeComponent__Group__3__Impl : ( ( rule__CompositeComponent__Group_3__0 )? ) ;
     public final void rule__CompositeComponent__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5991:1: ( ( ( rule__CompositeComponent__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5992:1: ( ( rule__CompositeComponent__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5288:1: ( ( ( rule__CompositeComponent__Group_3__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5289:1: ( ( rule__CompositeComponent__Group_3__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5992:1: ( ( rule__CompositeComponent__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5993:1: ( rule__CompositeComponent__Group_3__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5289:1: ( ( rule__CompositeComponent__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5290:1: ( rule__CompositeComponent__Group_3__0 )?
             {
              before(grammarAccess.getCompositeComponentAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5994:1: ( rule__CompositeComponent__Group_3__0 )?
-            int alt39=2;
-            int LA39_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5291:1: ( rule__CompositeComponent__Group_3__0 )?
+            int alt35=2;
+            int LA35_0 = input.LA(1);
 
-            if ( (LA39_0==46) ) {
-                alt39=1;
+            if ( (LA35_0==43) ) {
+                alt35=1;
             }
-            switch (alt39) {
+            switch (alt35) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5994:2: rule__CompositeComponent__Group_3__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5291:2: rule__CompositeComponent__Group_3__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__0_in_rule__CompositeComponent__Group__3__Impl11920);
+                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__0_in_rule__CompositeComponent__Group__3__Impl10552);
                     rule__CompositeComponent__Group_3__0();
 
                     state._fsp--;
@@ -15704,21 +13957,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6004:1: rule__CompositeComponent__Group__4 : rule__CompositeComponent__Group__4__Impl rule__CompositeComponent__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5301:1: rule__CompositeComponent__Group__4 : rule__CompositeComponent__Group__4__Impl rule__CompositeComponent__Group__5 ;
     public final void rule__CompositeComponent__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6008:1: ( rule__CompositeComponent__Group__4__Impl rule__CompositeComponent__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6009:2: rule__CompositeComponent__Group__4__Impl rule__CompositeComponent__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5305:1: ( rule__CompositeComponent__Group__4__Impl rule__CompositeComponent__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5306:2: rule__CompositeComponent__Group__4__Impl rule__CompositeComponent__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__4__Impl_in_rule__CompositeComponent__Group__411951);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__4__Impl_in_rule__CompositeComponent__Group__410583);
             rule__CompositeComponent__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__5_in_rule__CompositeComponent__Group__411954);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__5_in_rule__CompositeComponent__Group__410586);
             rule__CompositeComponent__Group__5();
 
             state._fsp--;
@@ -15742,20 +13995,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6016:1: rule__CompositeComponent__Group__4__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5313:1: rule__CompositeComponent__Group__4__Impl : ( '{' ) ;
     public final void rule__CompositeComponent__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6020:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6021:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5317:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5318:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6021:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6022:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5318:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5319:1: '{'
             {
              before(grammarAccess.getCompositeComponentAccess().getLeftCurlyBracketKeyword_4()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__CompositeComponent__Group__4__Impl11982); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__CompositeComponent__Group__4__Impl10614); 
              after(grammarAccess.getCompositeComponentAccess().getLeftCurlyBracketKeyword_4()); 
 
             }
@@ -15779,21 +14032,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6035:1: rule__CompositeComponent__Group__5 : rule__CompositeComponent__Group__5__Impl rule__CompositeComponent__Group__6 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5332:1: rule__CompositeComponent__Group__5 : rule__CompositeComponent__Group__5__Impl rule__CompositeComponent__Group__6 ;
     public final void rule__CompositeComponent__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6039:1: ( rule__CompositeComponent__Group__5__Impl rule__CompositeComponent__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6040:2: rule__CompositeComponent__Group__5__Impl rule__CompositeComponent__Group__6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5336:1: ( rule__CompositeComponent__Group__5__Impl rule__CompositeComponent__Group__6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5337:2: rule__CompositeComponent__Group__5__Impl rule__CompositeComponent__Group__6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__5__Impl_in_rule__CompositeComponent__Group__512013);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__5__Impl_in_rule__CompositeComponent__Group__510645);
             rule__CompositeComponent__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__6_in_rule__CompositeComponent__Group__512016);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__6_in_rule__CompositeComponent__Group__510648);
             rule__CompositeComponent__Group__6();
 
             state._fsp--;
@@ -15817,31 +14070,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6047:1: rule__CompositeComponent__Group__5__Impl : ( ( rule__CompositeComponent__Group_5__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5344:1: rule__CompositeComponent__Group__5__Impl : ( ( rule__CompositeComponent__Group_5__0 )? ) ;
     public final void rule__CompositeComponent__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6051:1: ( ( ( rule__CompositeComponent__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6052:1: ( ( rule__CompositeComponent__Group_5__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5348:1: ( ( ( rule__CompositeComponent__Group_5__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5349:1: ( ( rule__CompositeComponent__Group_5__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6052:1: ( ( rule__CompositeComponent__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6053:1: ( rule__CompositeComponent__Group_5__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5349:1: ( ( rule__CompositeComponent__Group_5__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5350:1: ( rule__CompositeComponent__Group_5__0 )?
             {
              before(grammarAccess.getCompositeComponentAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6054:1: ( rule__CompositeComponent__Group_5__0 )?
-            int alt40=2;
-            int LA40_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5351:1: ( rule__CompositeComponent__Group_5__0 )?
+            int alt36=2;
+            int LA36_0 = input.LA(1);
 
-            if ( (LA40_0==32) ) {
-                alt40=1;
+            if ( (LA36_0==29) ) {
+                alt36=1;
             }
-            switch (alt40) {
+            switch (alt36) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6054:2: rule__CompositeComponent__Group_5__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5351:2: rule__CompositeComponent__Group_5__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__0_in_rule__CompositeComponent__Group__5__Impl12043);
+                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__0_in_rule__CompositeComponent__Group__5__Impl10675);
                     rule__CompositeComponent__Group_5__0();
 
                     state._fsp--;
@@ -15875,21 +14128,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6064:1: rule__CompositeComponent__Group__6 : rule__CompositeComponent__Group__6__Impl rule__CompositeComponent__Group__7 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5361:1: rule__CompositeComponent__Group__6 : rule__CompositeComponent__Group__6__Impl rule__CompositeComponent__Group__7 ;
     public final void rule__CompositeComponent__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6068:1: ( rule__CompositeComponent__Group__6__Impl rule__CompositeComponent__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6069:2: rule__CompositeComponent__Group__6__Impl rule__CompositeComponent__Group__7
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5365:1: ( rule__CompositeComponent__Group__6__Impl rule__CompositeComponent__Group__7 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5366:2: rule__CompositeComponent__Group__6__Impl rule__CompositeComponent__Group__7
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__6__Impl_in_rule__CompositeComponent__Group__612074);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__6__Impl_in_rule__CompositeComponent__Group__610706);
             rule__CompositeComponent__Group__6__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__7_in_rule__CompositeComponent__Group__612077);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__7_in_rule__CompositeComponent__Group__610709);
             rule__CompositeComponent__Group__7();
 
             state._fsp--;
@@ -15913,31 +14166,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6076:1: rule__CompositeComponent__Group__6__Impl : ( ( rule__CompositeComponent__Group_6__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5373:1: rule__CompositeComponent__Group__6__Impl : ( ( rule__CompositeComponent__Group_6__0 )? ) ;
     public final void rule__CompositeComponent__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6080:1: ( ( ( rule__CompositeComponent__Group_6__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6081:1: ( ( rule__CompositeComponent__Group_6__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5377:1: ( ( ( rule__CompositeComponent__Group_6__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5378:1: ( ( rule__CompositeComponent__Group_6__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6081:1: ( ( rule__CompositeComponent__Group_6__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6082:1: ( rule__CompositeComponent__Group_6__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5378:1: ( ( rule__CompositeComponent__Group_6__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5379:1: ( rule__CompositeComponent__Group_6__0 )?
             {
              before(grammarAccess.getCompositeComponentAccess().getGroup_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6083:1: ( rule__CompositeComponent__Group_6__0 )?
-            int alt41=2;
-            int LA41_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5380:1: ( rule__CompositeComponent__Group_6__0 )?
+            int alt37=2;
+            int LA37_0 = input.LA(1);
 
-            if ( (LA41_0==49) ) {
-                alt41=1;
+            if ( (LA37_0==46) ) {
+                alt37=1;
             }
-            switch (alt41) {
+            switch (alt37) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6083:2: rule__CompositeComponent__Group_6__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5380:2: rule__CompositeComponent__Group_6__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__0_in_rule__CompositeComponent__Group__6__Impl12104);
+                    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__0_in_rule__CompositeComponent__Group__6__Impl10736);
                     rule__CompositeComponent__Group_6__0();
 
                     state._fsp--;
@@ -15971,16 +14224,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6093:1: rule__CompositeComponent__Group__7 : rule__CompositeComponent__Group__7__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5390:1: rule__CompositeComponent__Group__7 : rule__CompositeComponent__Group__7__Impl ;
     public final void rule__CompositeComponent__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6097:1: ( rule__CompositeComponent__Group__7__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6098:2: rule__CompositeComponent__Group__7__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5394:1: ( rule__CompositeComponent__Group__7__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5395:2: rule__CompositeComponent__Group__7__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__7__Impl_in_rule__CompositeComponent__Group__712135);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group__7__Impl_in_rule__CompositeComponent__Group__710767);
             rule__CompositeComponent__Group__7__Impl();
 
             state._fsp--;
@@ -16004,20 +14257,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6104:1: rule__CompositeComponent__Group__7__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5401:1: rule__CompositeComponent__Group__7__Impl : ( '}' ) ;
     public final void rule__CompositeComponent__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6108:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6109:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5405:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5406:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6109:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6110:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5406:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5407:1: '}'
             {
              before(grammarAccess.getCompositeComponentAccess().getRightCurlyBracketKeyword_7()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__CompositeComponent__Group__7__Impl12163); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__CompositeComponent__Group__7__Impl10795); 
              after(grammarAccess.getCompositeComponentAccess().getRightCurlyBracketKeyword_7()); 
 
             }
@@ -16041,21 +14294,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_2__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6139:1: rule__CompositeComponent__Group_2__0 : rule__CompositeComponent__Group_2__0__Impl rule__CompositeComponent__Group_2__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5436:1: rule__CompositeComponent__Group_2__0 : rule__CompositeComponent__Group_2__0__Impl rule__CompositeComponent__Group_2__1 ;
     public final void rule__CompositeComponent__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6143:1: ( rule__CompositeComponent__Group_2__0__Impl rule__CompositeComponent__Group_2__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6144:2: rule__CompositeComponent__Group_2__0__Impl rule__CompositeComponent__Group_2__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5440:1: ( rule__CompositeComponent__Group_2__0__Impl rule__CompositeComponent__Group_2__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5441:2: rule__CompositeComponent__Group_2__0__Impl rule__CompositeComponent__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__0__Impl_in_rule__CompositeComponent__Group_2__012210);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__0__Impl_in_rule__CompositeComponent__Group_2__010842);
             rule__CompositeComponent__Group_2__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__1_in_rule__CompositeComponent__Group_2__012213);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__1_in_rule__CompositeComponent__Group_2__010845);
             rule__CompositeComponent__Group_2__1();
 
             state._fsp--;
@@ -16079,23 +14332,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_2__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6151:1: rule__CompositeComponent__Group_2__0__Impl : ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5448:1: rule__CompositeComponent__Group_2__0__Impl : ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) ) ;
     public final void rule__CompositeComponent__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6155:1: ( ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6156:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5452:1: ( ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5453:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6156:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6157:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5453:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5454:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 )
             {
              before(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6158:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6158:2: rule__CompositeComponent__ProvidedRolesAssignment_2_0
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5455:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5455:2: rule__CompositeComponent__ProvidedRolesAssignment_2_0
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_0_in_rule__CompositeComponent__Group_2__0__Impl12240);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_0_in_rule__CompositeComponent__Group_2__0__Impl10872);
             rule__CompositeComponent__ProvidedRolesAssignment_2_0();
 
             state._fsp--;
@@ -16126,16 +14379,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_2__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6168:1: rule__CompositeComponent__Group_2__1 : rule__CompositeComponent__Group_2__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5465:1: rule__CompositeComponent__Group_2__1 : rule__CompositeComponent__Group_2__1__Impl ;
     public final void rule__CompositeComponent__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6172:1: ( rule__CompositeComponent__Group_2__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6173:2: rule__CompositeComponent__Group_2__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5469:1: ( rule__CompositeComponent__Group_2__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5470:2: rule__CompositeComponent__Group_2__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__1__Impl_in_rule__CompositeComponent__Group_2__112270);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2__1__Impl_in_rule__CompositeComponent__Group_2__110902);
             rule__CompositeComponent__Group_2__1__Impl();
 
             state._fsp--;
@@ -16159,35 +14412,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_2__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6179:1: rule__CompositeComponent__Group_2__1__Impl : ( ( rule__CompositeComponent__Group_2_1__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5476:1: rule__CompositeComponent__Group_2__1__Impl : ( ( rule__CompositeComponent__Group_2_1__0 )* ) ;
     public final void rule__CompositeComponent__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6183:1: ( ( ( rule__CompositeComponent__Group_2_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6184:1: ( ( rule__CompositeComponent__Group_2_1__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5480:1: ( ( ( rule__CompositeComponent__Group_2_1__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5481:1: ( ( rule__CompositeComponent__Group_2_1__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6184:1: ( ( rule__CompositeComponent__Group_2_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6185:1: ( rule__CompositeComponent__Group_2_1__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5481:1: ( ( rule__CompositeComponent__Group_2_1__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5482:1: ( rule__CompositeComponent__Group_2_1__0 )*
             {
              before(grammarAccess.getCompositeComponentAccess().getGroup_2_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6186:1: ( rule__CompositeComponent__Group_2_1__0 )*
-            loop42:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5483:1: ( rule__CompositeComponent__Group_2_1__0 )*
+            loop38:
             do {
-                int alt42=2;
-                int LA42_0 = input.LA(1);
+                int alt38=2;
+                int LA38_0 = input.LA(1);
 
-                if ( (LA42_0==23) ) {
-                    alt42=1;
+                if ( (LA38_0==26) ) {
+                    alt38=1;
                 }
 
 
-                switch (alt42) {
+                switch (alt38) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6186:2: rule__CompositeComponent__Group_2_1__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5483:2: rule__CompositeComponent__Group_2_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__0_in_rule__CompositeComponent__Group_2__1__Impl12297);
+            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__0_in_rule__CompositeComponent__Group_2__1__Impl10929);
             	    rule__CompositeComponent__Group_2_1__0();
 
             	    state._fsp--;
@@ -16197,7 +14450,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop42;
+            	    break loop38;
                 }
             } while (true);
 
@@ -16224,21 +14477,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_2_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6200:1: rule__CompositeComponent__Group_2_1__0 : rule__CompositeComponent__Group_2_1__0__Impl rule__CompositeComponent__Group_2_1__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5497:1: rule__CompositeComponent__Group_2_1__0 : rule__CompositeComponent__Group_2_1__0__Impl rule__CompositeComponent__Group_2_1__1 ;
     public final void rule__CompositeComponent__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6204:1: ( rule__CompositeComponent__Group_2_1__0__Impl rule__CompositeComponent__Group_2_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6205:2: rule__CompositeComponent__Group_2_1__0__Impl rule__CompositeComponent__Group_2_1__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5501:1: ( rule__CompositeComponent__Group_2_1__0__Impl rule__CompositeComponent__Group_2_1__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5502:2: rule__CompositeComponent__Group_2_1__0__Impl rule__CompositeComponent__Group_2_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__0__Impl_in_rule__CompositeComponent__Group_2_1__012332);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__0__Impl_in_rule__CompositeComponent__Group_2_1__010964);
             rule__CompositeComponent__Group_2_1__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__1_in_rule__CompositeComponent__Group_2_1__012335);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__1_in_rule__CompositeComponent__Group_2_1__010967);
             rule__CompositeComponent__Group_2_1__1();
 
             state._fsp--;
@@ -16262,20 +14515,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_2_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6212:1: rule__CompositeComponent__Group_2_1__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5509:1: rule__CompositeComponent__Group_2_1__0__Impl : ( ',' ) ;
     public final void rule__CompositeComponent__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6216:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6217:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5513:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5514:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6217:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6218:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5514:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5515:1: ','
             {
              before(grammarAccess.getCompositeComponentAccess().getCommaKeyword_2_1_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__CompositeComponent__Group_2_1__0__Impl12363); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__CompositeComponent__Group_2_1__0__Impl10995); 
              after(grammarAccess.getCompositeComponentAccess().getCommaKeyword_2_1_0()); 
 
             }
@@ -16299,16 +14552,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_2_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6231:1: rule__CompositeComponent__Group_2_1__1 : rule__CompositeComponent__Group_2_1__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5528:1: rule__CompositeComponent__Group_2_1__1 : rule__CompositeComponent__Group_2_1__1__Impl ;
     public final void rule__CompositeComponent__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6235:1: ( rule__CompositeComponent__Group_2_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6236:2: rule__CompositeComponent__Group_2_1__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5532:1: ( rule__CompositeComponent__Group_2_1__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5533:2: rule__CompositeComponent__Group_2_1__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__1__Impl_in_rule__CompositeComponent__Group_2_1__112394);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_2_1__1__Impl_in_rule__CompositeComponent__Group_2_1__111026);
             rule__CompositeComponent__Group_2_1__1__Impl();
 
             state._fsp--;
@@ -16332,23 +14585,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_2_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6242:1: rule__CompositeComponent__Group_2_1__1__Impl : ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5539:1: rule__CompositeComponent__Group_2_1__1__Impl : ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) ) ;
     public final void rule__CompositeComponent__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6246:1: ( ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6247:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5543:1: ( ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5544:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6247:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6248:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5544:1: ( ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5545:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 )
             {
              before(grammarAccess.getCompositeComponentAccess().getProvidedRolesAssignment_2_1_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6249:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6249:2: rule__CompositeComponent__ProvidedRolesAssignment_2_1_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5546:1: ( rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5546:2: rule__CompositeComponent__ProvidedRolesAssignment_2_1_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_1_1_in_rule__CompositeComponent__Group_2_1__1__Impl12421);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_1_1_in_rule__CompositeComponent__Group_2_1__1__Impl11053);
             rule__CompositeComponent__ProvidedRolesAssignment_2_1_1();
 
             state._fsp--;
@@ -16379,21 +14632,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6263:1: rule__CompositeComponent__Group_3__0 : rule__CompositeComponent__Group_3__0__Impl rule__CompositeComponent__Group_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5560:1: rule__CompositeComponent__Group_3__0 : rule__CompositeComponent__Group_3__0__Impl rule__CompositeComponent__Group_3__1 ;
     public final void rule__CompositeComponent__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6267:1: ( rule__CompositeComponent__Group_3__0__Impl rule__CompositeComponent__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6268:2: rule__CompositeComponent__Group_3__0__Impl rule__CompositeComponent__Group_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5564:1: ( rule__CompositeComponent__Group_3__0__Impl rule__CompositeComponent__Group_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5565:2: rule__CompositeComponent__Group_3__0__Impl rule__CompositeComponent__Group_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__0__Impl_in_rule__CompositeComponent__Group_3__012455);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__0__Impl_in_rule__CompositeComponent__Group_3__011087);
             rule__CompositeComponent__Group_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__1_in_rule__CompositeComponent__Group_3__012458);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__1_in_rule__CompositeComponent__Group_3__011090);
             rule__CompositeComponent__Group_3__1();
 
             state._fsp--;
@@ -16417,23 +14670,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6275:1: rule__CompositeComponent__Group_3__0__Impl : ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5572:1: rule__CompositeComponent__Group_3__0__Impl : ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) ) ;
     public final void rule__CompositeComponent__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6279:1: ( ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6280:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5576:1: ( ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5577:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6280:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6281:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5577:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_0 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5578:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_0 )
             {
              before(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6282:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_0 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6282:2: rule__CompositeComponent__RequiredRolesAssignment_3_0
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5579:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_0 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5579:2: rule__CompositeComponent__RequiredRolesAssignment_3_0
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_0_in_rule__CompositeComponent__Group_3__0__Impl12485);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_0_in_rule__CompositeComponent__Group_3__0__Impl11117);
             rule__CompositeComponent__RequiredRolesAssignment_3_0();
 
             state._fsp--;
@@ -16464,16 +14717,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6292:1: rule__CompositeComponent__Group_3__1 : rule__CompositeComponent__Group_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5589:1: rule__CompositeComponent__Group_3__1 : rule__CompositeComponent__Group_3__1__Impl ;
     public final void rule__CompositeComponent__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6296:1: ( rule__CompositeComponent__Group_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6297:2: rule__CompositeComponent__Group_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5593:1: ( rule__CompositeComponent__Group_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5594:2: rule__CompositeComponent__Group_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__1__Impl_in_rule__CompositeComponent__Group_3__112515);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3__1__Impl_in_rule__CompositeComponent__Group_3__111147);
             rule__CompositeComponent__Group_3__1__Impl();
 
             state._fsp--;
@@ -16497,35 +14750,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6303:1: rule__CompositeComponent__Group_3__1__Impl : ( ( rule__CompositeComponent__Group_3_1__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5600:1: rule__CompositeComponent__Group_3__1__Impl : ( ( rule__CompositeComponent__Group_3_1__0 )* ) ;
     public final void rule__CompositeComponent__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6307:1: ( ( ( rule__CompositeComponent__Group_3_1__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6308:1: ( ( rule__CompositeComponent__Group_3_1__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5604:1: ( ( ( rule__CompositeComponent__Group_3_1__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5605:1: ( ( rule__CompositeComponent__Group_3_1__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6308:1: ( ( rule__CompositeComponent__Group_3_1__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6309:1: ( rule__CompositeComponent__Group_3_1__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5605:1: ( ( rule__CompositeComponent__Group_3_1__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5606:1: ( rule__CompositeComponent__Group_3_1__0 )*
             {
              before(grammarAccess.getCompositeComponentAccess().getGroup_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6310:1: ( rule__CompositeComponent__Group_3_1__0 )*
-            loop43:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5607:1: ( rule__CompositeComponent__Group_3_1__0 )*
+            loop39:
             do {
-                int alt43=2;
-                int LA43_0 = input.LA(1);
+                int alt39=2;
+                int LA39_0 = input.LA(1);
 
-                if ( (LA43_0==23) ) {
-                    alt43=1;
+                if ( (LA39_0==26) ) {
+                    alt39=1;
                 }
 
 
-                switch (alt43) {
+                switch (alt39) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6310:2: rule__CompositeComponent__Group_3_1__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5607:2: rule__CompositeComponent__Group_3_1__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__0_in_rule__CompositeComponent__Group_3__1__Impl12542);
+            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__0_in_rule__CompositeComponent__Group_3__1__Impl11174);
             	    rule__CompositeComponent__Group_3_1__0();
 
             	    state._fsp--;
@@ -16535,7 +14788,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop43;
+            	    break loop39;
                 }
             } while (true);
 
@@ -16562,21 +14815,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_3_1__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6324:1: rule__CompositeComponent__Group_3_1__0 : rule__CompositeComponent__Group_3_1__0__Impl rule__CompositeComponent__Group_3_1__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5621:1: rule__CompositeComponent__Group_3_1__0 : rule__CompositeComponent__Group_3_1__0__Impl rule__CompositeComponent__Group_3_1__1 ;
     public final void rule__CompositeComponent__Group_3_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6328:1: ( rule__CompositeComponent__Group_3_1__0__Impl rule__CompositeComponent__Group_3_1__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6329:2: rule__CompositeComponent__Group_3_1__0__Impl rule__CompositeComponent__Group_3_1__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5625:1: ( rule__CompositeComponent__Group_3_1__0__Impl rule__CompositeComponent__Group_3_1__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5626:2: rule__CompositeComponent__Group_3_1__0__Impl rule__CompositeComponent__Group_3_1__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__0__Impl_in_rule__CompositeComponent__Group_3_1__012577);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__0__Impl_in_rule__CompositeComponent__Group_3_1__011209);
             rule__CompositeComponent__Group_3_1__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__1_in_rule__CompositeComponent__Group_3_1__012580);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__1_in_rule__CompositeComponent__Group_3_1__011212);
             rule__CompositeComponent__Group_3_1__1();
 
             state._fsp--;
@@ -16600,20 +14853,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_3_1__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6336:1: rule__CompositeComponent__Group_3_1__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5633:1: rule__CompositeComponent__Group_3_1__0__Impl : ( ',' ) ;
     public final void rule__CompositeComponent__Group_3_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6340:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6341:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5637:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5638:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6341:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6342:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5638:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5639:1: ','
             {
              before(grammarAccess.getCompositeComponentAccess().getCommaKeyword_3_1_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__CompositeComponent__Group_3_1__0__Impl12608); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__CompositeComponent__Group_3_1__0__Impl11240); 
              after(grammarAccess.getCompositeComponentAccess().getCommaKeyword_3_1_0()); 
 
             }
@@ -16637,16 +14890,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_3_1__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6355:1: rule__CompositeComponent__Group_3_1__1 : rule__CompositeComponent__Group_3_1__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5652:1: rule__CompositeComponent__Group_3_1__1 : rule__CompositeComponent__Group_3_1__1__Impl ;
     public final void rule__CompositeComponent__Group_3_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6359:1: ( rule__CompositeComponent__Group_3_1__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6360:2: rule__CompositeComponent__Group_3_1__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5656:1: ( rule__CompositeComponent__Group_3_1__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5657:2: rule__CompositeComponent__Group_3_1__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__1__Impl_in_rule__CompositeComponent__Group_3_1__112639);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_3_1__1__Impl_in_rule__CompositeComponent__Group_3_1__111271);
             rule__CompositeComponent__Group_3_1__1__Impl();
 
             state._fsp--;
@@ -16670,23 +14923,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_3_1__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6366:1: rule__CompositeComponent__Group_3_1__1__Impl : ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5663:1: rule__CompositeComponent__Group_3_1__1__Impl : ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) ) ;
     public final void rule__CompositeComponent__Group_3_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6370:1: ( ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6371:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5667:1: ( ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5668:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6371:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6372:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5668:1: ( ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5669:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 )
             {
              before(grammarAccess.getCompositeComponentAccess().getRequiredRolesAssignment_3_1_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6373:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6373:2: rule__CompositeComponent__RequiredRolesAssignment_3_1_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5670:1: ( rule__CompositeComponent__RequiredRolesAssignment_3_1_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5670:2: rule__CompositeComponent__RequiredRolesAssignment_3_1_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_1_1_in_rule__CompositeComponent__Group_3_1__1__Impl12666);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_1_1_in_rule__CompositeComponent__Group_3_1__1__Impl11298);
             rule__CompositeComponent__RequiredRolesAssignment_3_1_1();
 
             state._fsp--;
@@ -16717,21 +14970,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6387:1: rule__CompositeComponent__Group_5__0 : rule__CompositeComponent__Group_5__0__Impl rule__CompositeComponent__Group_5__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5684:1: rule__CompositeComponent__Group_5__0 : rule__CompositeComponent__Group_5__0__Impl rule__CompositeComponent__Group_5__1 ;
     public final void rule__CompositeComponent__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6391:1: ( rule__CompositeComponent__Group_5__0__Impl rule__CompositeComponent__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6392:2: rule__CompositeComponent__Group_5__0__Impl rule__CompositeComponent__Group_5__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5688:1: ( rule__CompositeComponent__Group_5__0__Impl rule__CompositeComponent__Group_5__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5689:2: rule__CompositeComponent__Group_5__0__Impl rule__CompositeComponent__Group_5__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__0__Impl_in_rule__CompositeComponent__Group_5__012700);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__0__Impl_in_rule__CompositeComponent__Group_5__011332);
             rule__CompositeComponent__Group_5__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__1_in_rule__CompositeComponent__Group_5__012703);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__1_in_rule__CompositeComponent__Group_5__011335);
             rule__CompositeComponent__Group_5__1();
 
             state._fsp--;
@@ -16755,20 +15008,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6399:1: rule__CompositeComponent__Group_5__0__Impl : ( 'relationship' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5696:1: rule__CompositeComponent__Group_5__0__Impl : ( 'relationship' ) ;
     public final void rule__CompositeComponent__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6403:1: ( ( 'relationship' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6404:1: ( 'relationship' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5700:1: ( ( 'relationship' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5701:1: ( 'relationship' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6404:1: ( 'relationship' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6405:1: 'relationship'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5701:1: ( 'relationship' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5702:1: 'relationship'
             {
              before(grammarAccess.getCompositeComponentAccess().getRelationshipKeyword_5_0()); 
-            match(input,32,FollowSets000.FOLLOW_32_in_rule__CompositeComponent__Group_5__0__Impl12731); 
+            match(input,29,FollowSets000.FOLLOW_29_in_rule__CompositeComponent__Group_5__0__Impl11363); 
              after(grammarAccess.getCompositeComponentAccess().getRelationshipKeyword_5_0()); 
 
             }
@@ -16792,21 +15045,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6418:1: rule__CompositeComponent__Group_5__1 : rule__CompositeComponent__Group_5__1__Impl rule__CompositeComponent__Group_5__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5715:1: rule__CompositeComponent__Group_5__1 : rule__CompositeComponent__Group_5__1__Impl rule__CompositeComponent__Group_5__2 ;
     public final void rule__CompositeComponent__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6422:1: ( rule__CompositeComponent__Group_5__1__Impl rule__CompositeComponent__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6423:2: rule__CompositeComponent__Group_5__1__Impl rule__CompositeComponent__Group_5__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5719:1: ( rule__CompositeComponent__Group_5__1__Impl rule__CompositeComponent__Group_5__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5720:2: rule__CompositeComponent__Group_5__1__Impl rule__CompositeComponent__Group_5__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__1__Impl_in_rule__CompositeComponent__Group_5__112762);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__1__Impl_in_rule__CompositeComponent__Group_5__111394);
             rule__CompositeComponent__Group_5__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__2_in_rule__CompositeComponent__Group_5__112765);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__2_in_rule__CompositeComponent__Group_5__111397);
             rule__CompositeComponent__Group_5__2();
 
             state._fsp--;
@@ -16830,20 +15083,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6430:1: rule__CompositeComponent__Group_5__1__Impl : ( '(' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5727:1: rule__CompositeComponent__Group_5__1__Impl : ( '(' ) ;
     public final void rule__CompositeComponent__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6434:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6435:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5731:1: ( ( '(' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5732:1: ( '(' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6435:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6436:1: '('
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5732:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5733:1: '('
             {
              before(grammarAccess.getCompositeComponentAccess().getLeftParenthesisKeyword_5_1()); 
-            match(input,28,FollowSets000.FOLLOW_28_in_rule__CompositeComponent__Group_5__1__Impl12793); 
+            match(input,24,FollowSets000.FOLLOW_24_in_rule__CompositeComponent__Group_5__1__Impl11425); 
              after(grammarAccess.getCompositeComponentAccess().getLeftParenthesisKeyword_5_1()); 
 
             }
@@ -16867,21 +15120,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6449:1: rule__CompositeComponent__Group_5__2 : rule__CompositeComponent__Group_5__2__Impl rule__CompositeComponent__Group_5__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5746:1: rule__CompositeComponent__Group_5__2 : rule__CompositeComponent__Group_5__2__Impl rule__CompositeComponent__Group_5__3 ;
     public final void rule__CompositeComponent__Group_5__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6453:1: ( rule__CompositeComponent__Group_5__2__Impl rule__CompositeComponent__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6454:2: rule__CompositeComponent__Group_5__2__Impl rule__CompositeComponent__Group_5__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5750:1: ( rule__CompositeComponent__Group_5__2__Impl rule__CompositeComponent__Group_5__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5751:2: rule__CompositeComponent__Group_5__2__Impl rule__CompositeComponent__Group_5__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__2__Impl_in_rule__CompositeComponent__Group_5__212824);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__2__Impl_in_rule__CompositeComponent__Group_5__211456);
             rule__CompositeComponent__Group_5__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__3_in_rule__CompositeComponent__Group_5__212827);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__3_in_rule__CompositeComponent__Group_5__211459);
             rule__CompositeComponent__Group_5__3();
 
             state._fsp--;
@@ -16905,23 +15158,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6461:1: rule__CompositeComponent__Group_5__2__Impl : ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5758:1: rule__CompositeComponent__Group_5__2__Impl : ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) ) ;
     public final void rule__CompositeComponent__Group_5__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6465:1: ( ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6466:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5762:1: ( ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5763:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6466:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6467:1: ( rule__CompositeComponent__RelationshipAssignment_5_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5763:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5764:1: ( rule__CompositeComponent__RelationshipAssignment_5_2 )
             {
              before(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6468:1: ( rule__CompositeComponent__RelationshipAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6468:2: rule__CompositeComponent__RelationshipAssignment_5_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5765:1: ( rule__CompositeComponent__RelationshipAssignment_5_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5765:2: rule__CompositeComponent__RelationshipAssignment_5_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_2_in_rule__CompositeComponent__Group_5__2__Impl12854);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_2_in_rule__CompositeComponent__Group_5__2__Impl11486);
             rule__CompositeComponent__RelationshipAssignment_5_2();
 
             state._fsp--;
@@ -16952,21 +15205,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6478:1: rule__CompositeComponent__Group_5__3 : rule__CompositeComponent__Group_5__3__Impl rule__CompositeComponent__Group_5__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5775:1: rule__CompositeComponent__Group_5__3 : rule__CompositeComponent__Group_5__3__Impl rule__CompositeComponent__Group_5__4 ;
     public final void rule__CompositeComponent__Group_5__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6482:1: ( rule__CompositeComponent__Group_5__3__Impl rule__CompositeComponent__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6483:2: rule__CompositeComponent__Group_5__3__Impl rule__CompositeComponent__Group_5__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5779:1: ( rule__CompositeComponent__Group_5__3__Impl rule__CompositeComponent__Group_5__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5780:2: rule__CompositeComponent__Group_5__3__Impl rule__CompositeComponent__Group_5__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__3__Impl_in_rule__CompositeComponent__Group_5__312884);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__3__Impl_in_rule__CompositeComponent__Group_5__311516);
             rule__CompositeComponent__Group_5__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__4_in_rule__CompositeComponent__Group_5__312887);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__4_in_rule__CompositeComponent__Group_5__311519);
             rule__CompositeComponent__Group_5__4();
 
             state._fsp--;
@@ -16990,35 +15243,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6490:1: rule__CompositeComponent__Group_5__3__Impl : ( ( rule__CompositeComponent__Group_5_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5787:1: rule__CompositeComponent__Group_5__3__Impl : ( ( rule__CompositeComponent__Group_5_3__0 )* ) ;
     public final void rule__CompositeComponent__Group_5__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6494:1: ( ( ( rule__CompositeComponent__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6495:1: ( ( rule__CompositeComponent__Group_5_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5791:1: ( ( ( rule__CompositeComponent__Group_5_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5792:1: ( ( rule__CompositeComponent__Group_5_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6495:1: ( ( rule__CompositeComponent__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6496:1: ( rule__CompositeComponent__Group_5_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5792:1: ( ( rule__CompositeComponent__Group_5_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5793:1: ( rule__CompositeComponent__Group_5_3__0 )*
             {
              before(grammarAccess.getCompositeComponentAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6497:1: ( rule__CompositeComponent__Group_5_3__0 )*
-            loop44:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5794:1: ( rule__CompositeComponent__Group_5_3__0 )*
+            loop40:
             do {
-                int alt44=2;
-                int LA44_0 = input.LA(1);
+                int alt40=2;
+                int LA40_0 = input.LA(1);
 
-                if ( (LA44_0==23) ) {
-                    alt44=1;
+                if ( (LA40_0==26) ) {
+                    alt40=1;
                 }
 
 
-                switch (alt44) {
+                switch (alt40) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6497:2: rule__CompositeComponent__Group_5_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5794:2: rule__CompositeComponent__Group_5_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__0_in_rule__CompositeComponent__Group_5__3__Impl12914);
+            	    pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__0_in_rule__CompositeComponent__Group_5__3__Impl11546);
             	    rule__CompositeComponent__Group_5_3__0();
 
             	    state._fsp--;
@@ -17028,7 +15281,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop44;
+            	    break loop40;
                 }
             } while (true);
 
@@ -17055,16 +15308,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6507:1: rule__CompositeComponent__Group_5__4 : rule__CompositeComponent__Group_5__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5804:1: rule__CompositeComponent__Group_5__4 : rule__CompositeComponent__Group_5__4__Impl ;
     public final void rule__CompositeComponent__Group_5__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6511:1: ( rule__CompositeComponent__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6512:2: rule__CompositeComponent__Group_5__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5808:1: ( rule__CompositeComponent__Group_5__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5809:2: rule__CompositeComponent__Group_5__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__4__Impl_in_rule__CompositeComponent__Group_5__412945);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5__4__Impl_in_rule__CompositeComponent__Group_5__411577);
             rule__CompositeComponent__Group_5__4__Impl();
 
             state._fsp--;
@@ -17088,20 +15341,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6518:1: rule__CompositeComponent__Group_5__4__Impl : ( ')' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5815:1: rule__CompositeComponent__Group_5__4__Impl : ( ')' ) ;
     public final void rule__CompositeComponent__Group_5__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6522:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6523:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5819:1: ( ( ')' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5820:1: ( ')' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6523:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6524:1: ')'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5820:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5821:1: ')'
             {
              before(grammarAccess.getCompositeComponentAccess().getRightParenthesisKeyword_5_4()); 
-            match(input,29,FollowSets000.FOLLOW_29_in_rule__CompositeComponent__Group_5__4__Impl12973); 
+            match(input,25,FollowSets000.FOLLOW_25_in_rule__CompositeComponent__Group_5__4__Impl11605); 
              after(grammarAccess.getCompositeComponentAccess().getRightParenthesisKeyword_5_4()); 
 
             }
@@ -17125,21 +15378,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6547:1: rule__CompositeComponent__Group_5_3__0 : rule__CompositeComponent__Group_5_3__0__Impl rule__CompositeComponent__Group_5_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5844:1: rule__CompositeComponent__Group_5_3__0 : rule__CompositeComponent__Group_5_3__0__Impl rule__CompositeComponent__Group_5_3__1 ;
     public final void rule__CompositeComponent__Group_5_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6551:1: ( rule__CompositeComponent__Group_5_3__0__Impl rule__CompositeComponent__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6552:2: rule__CompositeComponent__Group_5_3__0__Impl rule__CompositeComponent__Group_5_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5848:1: ( rule__CompositeComponent__Group_5_3__0__Impl rule__CompositeComponent__Group_5_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5849:2: rule__CompositeComponent__Group_5_3__0__Impl rule__CompositeComponent__Group_5_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__0__Impl_in_rule__CompositeComponent__Group_5_3__013014);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__0__Impl_in_rule__CompositeComponent__Group_5_3__011646);
             rule__CompositeComponent__Group_5_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__1_in_rule__CompositeComponent__Group_5_3__013017);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__1_in_rule__CompositeComponent__Group_5_3__011649);
             rule__CompositeComponent__Group_5_3__1();
 
             state._fsp--;
@@ -17163,20 +15416,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6559:1: rule__CompositeComponent__Group_5_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5856:1: rule__CompositeComponent__Group_5_3__0__Impl : ( ',' ) ;
     public final void rule__CompositeComponent__Group_5_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6563:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6564:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5860:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5861:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6564:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6565:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5861:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5862:1: ','
             {
              before(grammarAccess.getCompositeComponentAccess().getCommaKeyword_5_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__CompositeComponent__Group_5_3__0__Impl13045); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__CompositeComponent__Group_5_3__0__Impl11677); 
              after(grammarAccess.getCompositeComponentAccess().getCommaKeyword_5_3_0()); 
 
             }
@@ -17200,16 +15453,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6578:1: rule__CompositeComponent__Group_5_3__1 : rule__CompositeComponent__Group_5_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5875:1: rule__CompositeComponent__Group_5_3__1 : rule__CompositeComponent__Group_5_3__1__Impl ;
     public final void rule__CompositeComponent__Group_5_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6582:1: ( rule__CompositeComponent__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6583:2: rule__CompositeComponent__Group_5_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5879:1: ( rule__CompositeComponent__Group_5_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5880:2: rule__CompositeComponent__Group_5_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__1__Impl_in_rule__CompositeComponent__Group_5_3__113076);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_5_3__1__Impl_in_rule__CompositeComponent__Group_5_3__111708);
             rule__CompositeComponent__Group_5_3__1__Impl();
 
             state._fsp--;
@@ -17233,23 +15486,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6589:1: rule__CompositeComponent__Group_5_3__1__Impl : ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5886:1: rule__CompositeComponent__Group_5_3__1__Impl : ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) ) ;
     public final void rule__CompositeComponent__Group_5_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6593:1: ( ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6594:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5890:1: ( ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5891:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6594:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6595:1: ( rule__CompositeComponent__RelationshipAssignment_5_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5891:1: ( ( rule__CompositeComponent__RelationshipAssignment_5_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5892:1: ( rule__CompositeComponent__RelationshipAssignment_5_3_1 )
             {
              before(grammarAccess.getCompositeComponentAccess().getRelationshipAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6596:1: ( rule__CompositeComponent__RelationshipAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6596:2: rule__CompositeComponent__RelationshipAssignment_5_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5893:1: ( rule__CompositeComponent__RelationshipAssignment_5_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5893:2: rule__CompositeComponent__RelationshipAssignment_5_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_3_1_in_rule__CompositeComponent__Group_5_3__1__Impl13103);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_3_1_in_rule__CompositeComponent__Group_5_3__1__Impl11735);
             rule__CompositeComponent__RelationshipAssignment_5_3_1();
 
             state._fsp--;
@@ -17280,21 +15533,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_6__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6610:1: rule__CompositeComponent__Group_6__0 : rule__CompositeComponent__Group_6__0__Impl rule__CompositeComponent__Group_6__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5907:1: rule__CompositeComponent__Group_6__0 : rule__CompositeComponent__Group_6__0__Impl rule__CompositeComponent__Group_6__1 ;
     public final void rule__CompositeComponent__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6614:1: ( rule__CompositeComponent__Group_6__0__Impl rule__CompositeComponent__Group_6__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6615:2: rule__CompositeComponent__Group_6__0__Impl rule__CompositeComponent__Group_6__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5911:1: ( rule__CompositeComponent__Group_6__0__Impl rule__CompositeComponent__Group_6__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5912:2: rule__CompositeComponent__Group_6__0__Impl rule__CompositeComponent__Group_6__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__0__Impl_in_rule__CompositeComponent__Group_6__013137);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__0__Impl_in_rule__CompositeComponent__Group_6__011769);
             rule__CompositeComponent__Group_6__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__1_in_rule__CompositeComponent__Group_6__013140);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__1_in_rule__CompositeComponent__Group_6__011772);
             rule__CompositeComponent__Group_6__1();
 
             state._fsp--;
@@ -17318,20 +15571,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_6__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6622:1: rule__CompositeComponent__Group_6__0__Impl : ( 'assembly' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5919:1: rule__CompositeComponent__Group_6__0__Impl : ( 'assembly' ) ;
     public final void rule__CompositeComponent__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6626:1: ( ( 'assembly' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6627:1: ( 'assembly' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5923:1: ( ( 'assembly' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5924:1: ( 'assembly' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6627:1: ( 'assembly' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6628:1: 'assembly'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5924:1: ( 'assembly' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5925:1: 'assembly'
             {
              before(grammarAccess.getCompositeComponentAccess().getAssemblyKeyword_6_0()); 
-            match(input,49,FollowSets000.FOLLOW_49_in_rule__CompositeComponent__Group_6__0__Impl13168); 
+            match(input,46,FollowSets000.FOLLOW_46_in_rule__CompositeComponent__Group_6__0__Impl11800); 
              after(grammarAccess.getCompositeComponentAccess().getAssemblyKeyword_6_0()); 
 
             }
@@ -17355,16 +15608,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_6__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6641:1: rule__CompositeComponent__Group_6__1 : rule__CompositeComponent__Group_6__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5938:1: rule__CompositeComponent__Group_6__1 : rule__CompositeComponent__Group_6__1__Impl ;
     public final void rule__CompositeComponent__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6645:1: ( rule__CompositeComponent__Group_6__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6646:2: rule__CompositeComponent__Group_6__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5942:1: ( rule__CompositeComponent__Group_6__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5943:2: rule__CompositeComponent__Group_6__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__1__Impl_in_rule__CompositeComponent__Group_6__113199);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__Group_6__1__Impl_in_rule__CompositeComponent__Group_6__111831);
             rule__CompositeComponent__Group_6__1__Impl();
 
             state._fsp--;
@@ -17388,23 +15641,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__Group_6__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6652:1: rule__CompositeComponent__Group_6__1__Impl : ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5949:1: rule__CompositeComponent__Group_6__1__Impl : ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) ) ;
     public final void rule__CompositeComponent__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6656:1: ( ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6657:1: ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5953:1: ( ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5954:1: ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6657:1: ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6658:1: ( rule__CompositeComponent__AssemblyAssignment_6_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5954:1: ( ( rule__CompositeComponent__AssemblyAssignment_6_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5955:1: ( rule__CompositeComponent__AssemblyAssignment_6_1 )
             {
              before(grammarAccess.getCompositeComponentAccess().getAssemblyAssignment_6_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6659:1: ( rule__CompositeComponent__AssemblyAssignment_6_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6659:2: rule__CompositeComponent__AssemblyAssignment_6_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5956:1: ( rule__CompositeComponent__AssemblyAssignment_6_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5956:2: rule__CompositeComponent__AssemblyAssignment_6_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__AssemblyAssignment_6_1_in_rule__CompositeComponent__Group_6__1__Impl13226);
+            pushFollow(FollowSets000.FOLLOW_rule__CompositeComponent__AssemblyAssignment_6_1_in_rule__CompositeComponent__Group_6__1__Impl11858);
             rule__CompositeComponent__AssemblyAssignment_6_1();
 
             state._fsp--;
@@ -17435,21 +15688,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6673:1: rule__SubSystem__Group__0 : rule__SubSystem__Group__0__Impl rule__SubSystem__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5970:1: rule__SubSystem__Group__0 : rule__SubSystem__Group__0__Impl rule__SubSystem__Group__1 ;
     public final void rule__SubSystem__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6677:1: ( rule__SubSystem__Group__0__Impl rule__SubSystem__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6678:2: rule__SubSystem__Group__0__Impl rule__SubSystem__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5974:1: ( rule__SubSystem__Group__0__Impl rule__SubSystem__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5975:2: rule__SubSystem__Group__0__Impl rule__SubSystem__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__0__Impl_in_rule__SubSystem__Group__013260);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__0__Impl_in_rule__SubSystem__Group__011892);
             rule__SubSystem__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__1_in_rule__SubSystem__Group__013263);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__1_in_rule__SubSystem__Group__011895);
             rule__SubSystem__Group__1();
 
             state._fsp--;
@@ -17473,20 +15726,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6685:1: rule__SubSystem__Group__0__Impl : ( 'SubSystem' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5982:1: rule__SubSystem__Group__0__Impl : ( 'SubSystem' ) ;
     public final void rule__SubSystem__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6689:1: ( ( 'SubSystem' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6690:1: ( 'SubSystem' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5986:1: ( ( 'SubSystem' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5987:1: ( 'SubSystem' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6690:1: ( 'SubSystem' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6691:1: 'SubSystem'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5987:1: ( 'SubSystem' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:5988:1: 'SubSystem'
             {
              before(grammarAccess.getSubSystemAccess().getSubSystemKeyword_0()); 
-            match(input,50,FollowSets000.FOLLOW_50_in_rule__SubSystem__Group__0__Impl13291); 
+            match(input,47,FollowSets000.FOLLOW_47_in_rule__SubSystem__Group__0__Impl11923); 
              after(grammarAccess.getSubSystemAccess().getSubSystemKeyword_0()); 
 
             }
@@ -17510,21 +15763,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6704:1: rule__SubSystem__Group__1 : rule__SubSystem__Group__1__Impl rule__SubSystem__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6001:1: rule__SubSystem__Group__1 : rule__SubSystem__Group__1__Impl rule__SubSystem__Group__2 ;
     public final void rule__SubSystem__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6708:1: ( rule__SubSystem__Group__1__Impl rule__SubSystem__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6709:2: rule__SubSystem__Group__1__Impl rule__SubSystem__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6005:1: ( rule__SubSystem__Group__1__Impl rule__SubSystem__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6006:2: rule__SubSystem__Group__1__Impl rule__SubSystem__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__1__Impl_in_rule__SubSystem__Group__113322);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__1__Impl_in_rule__SubSystem__Group__111954);
             rule__SubSystem__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__2_in_rule__SubSystem__Group__113325);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__2_in_rule__SubSystem__Group__111957);
             rule__SubSystem__Group__2();
 
             state._fsp--;
@@ -17548,23 +15801,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6716:1: rule__SubSystem__Group__1__Impl : ( ( rule__SubSystem__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6013:1: rule__SubSystem__Group__1__Impl : ( ( rule__SubSystem__NameAssignment_1 ) ) ;
     public final void rule__SubSystem__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6720:1: ( ( ( rule__SubSystem__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6721:1: ( ( rule__SubSystem__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6017:1: ( ( ( rule__SubSystem__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6018:1: ( ( rule__SubSystem__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6721:1: ( ( rule__SubSystem__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6722:1: ( rule__SubSystem__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6018:1: ( ( rule__SubSystem__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6019:1: ( rule__SubSystem__NameAssignment_1 )
             {
              before(grammarAccess.getSubSystemAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6723:1: ( rule__SubSystem__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6723:2: rule__SubSystem__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6020:1: ( rule__SubSystem__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6020:2: rule__SubSystem__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__NameAssignment_1_in_rule__SubSystem__Group__1__Impl13352);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__NameAssignment_1_in_rule__SubSystem__Group__1__Impl11984);
             rule__SubSystem__NameAssignment_1();
 
             state._fsp--;
@@ -17595,21 +15848,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6733:1: rule__SubSystem__Group__2 : rule__SubSystem__Group__2__Impl rule__SubSystem__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6030:1: rule__SubSystem__Group__2 : rule__SubSystem__Group__2__Impl rule__SubSystem__Group__3 ;
     public final void rule__SubSystem__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6737:1: ( rule__SubSystem__Group__2__Impl rule__SubSystem__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6738:2: rule__SubSystem__Group__2__Impl rule__SubSystem__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6034:1: ( rule__SubSystem__Group__2__Impl rule__SubSystem__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6035:2: rule__SubSystem__Group__2__Impl rule__SubSystem__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__2__Impl_in_rule__SubSystem__Group__213382);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__2__Impl_in_rule__SubSystem__Group__212014);
             rule__SubSystem__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__3_in_rule__SubSystem__Group__213385);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__3_in_rule__SubSystem__Group__212017);
             rule__SubSystem__Group__3();
 
             state._fsp--;
@@ -17633,31 +15886,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6745:1: rule__SubSystem__Group__2__Impl : ( ( rule__SubSystem__Group_2__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6042:1: rule__SubSystem__Group__2__Impl : ( ( rule__SubSystem__Group_2__0 )? ) ;
     public final void rule__SubSystem__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6749:1: ( ( ( rule__SubSystem__Group_2__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6750:1: ( ( rule__SubSystem__Group_2__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6046:1: ( ( ( rule__SubSystem__Group_2__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6047:1: ( ( rule__SubSystem__Group_2__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6750:1: ( ( rule__SubSystem__Group_2__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6751:1: ( rule__SubSystem__Group_2__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6047:1: ( ( rule__SubSystem__Group_2__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6048:1: ( rule__SubSystem__Group_2__0 )?
             {
              before(grammarAccess.getSubSystemAccess().getGroup_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6752:1: ( rule__SubSystem__Group_2__0 )?
-            int alt45=2;
-            int LA45_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6049:1: ( rule__SubSystem__Group_2__0 )?
+            int alt41=2;
+            int LA41_0 = input.LA(1);
 
-            if ( (LA45_0==33) ) {
-                alt45=1;
+            if ( (LA41_0==30) ) {
+                alt41=1;
             }
-            switch (alt45) {
+            switch (alt41) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6752:2: rule__SubSystem__Group_2__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6049:2: rule__SubSystem__Group_2__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__0_in_rule__SubSystem__Group__2__Impl13412);
+                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__0_in_rule__SubSystem__Group__2__Impl12044);
                     rule__SubSystem__Group_2__0();
 
                     state._fsp--;
@@ -17691,21 +15944,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6762:1: rule__SubSystem__Group__3 : rule__SubSystem__Group__3__Impl rule__SubSystem__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6059:1: rule__SubSystem__Group__3 : rule__SubSystem__Group__3__Impl rule__SubSystem__Group__4 ;
     public final void rule__SubSystem__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6766:1: ( rule__SubSystem__Group__3__Impl rule__SubSystem__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6767:2: rule__SubSystem__Group__3__Impl rule__SubSystem__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6063:1: ( rule__SubSystem__Group__3__Impl rule__SubSystem__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6064:2: rule__SubSystem__Group__3__Impl rule__SubSystem__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__3__Impl_in_rule__SubSystem__Group__313443);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__3__Impl_in_rule__SubSystem__Group__312075);
             rule__SubSystem__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__4_in_rule__SubSystem__Group__313446);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__4_in_rule__SubSystem__Group__312078);
             rule__SubSystem__Group__4();
 
             state._fsp--;
@@ -17729,31 +15982,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6774:1: rule__SubSystem__Group__3__Impl : ( ( rule__SubSystem__Group_3__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6071:1: rule__SubSystem__Group__3__Impl : ( ( rule__SubSystem__Group_3__0 )? ) ;
     public final void rule__SubSystem__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6778:1: ( ( ( rule__SubSystem__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6779:1: ( ( rule__SubSystem__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6075:1: ( ( ( rule__SubSystem__Group_3__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6076:1: ( ( rule__SubSystem__Group_3__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6779:1: ( ( rule__SubSystem__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6780:1: ( rule__SubSystem__Group_3__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6076:1: ( ( rule__SubSystem__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6077:1: ( rule__SubSystem__Group_3__0 )?
             {
              before(grammarAccess.getSubSystemAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6781:1: ( rule__SubSystem__Group_3__0 )?
-            int alt46=2;
-            int LA46_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6078:1: ( rule__SubSystem__Group_3__0 )?
+            int alt42=2;
+            int LA42_0 = input.LA(1);
 
-            if ( (LA46_0==34) ) {
-                alt46=1;
+            if ( (LA42_0==31) ) {
+                alt42=1;
             }
-            switch (alt46) {
+            switch (alt42) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6781:2: rule__SubSystem__Group_3__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6078:2: rule__SubSystem__Group_3__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__0_in_rule__SubSystem__Group__3__Impl13473);
+                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__0_in_rule__SubSystem__Group__3__Impl12105);
                     rule__SubSystem__Group_3__0();
 
                     state._fsp--;
@@ -17787,21 +16040,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6791:1: rule__SubSystem__Group__4 : rule__SubSystem__Group__4__Impl rule__SubSystem__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6088:1: rule__SubSystem__Group__4 : rule__SubSystem__Group__4__Impl rule__SubSystem__Group__5 ;
     public final void rule__SubSystem__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6795:1: ( rule__SubSystem__Group__4__Impl rule__SubSystem__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6796:2: rule__SubSystem__Group__4__Impl rule__SubSystem__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6092:1: ( rule__SubSystem__Group__4__Impl rule__SubSystem__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6093:2: rule__SubSystem__Group__4__Impl rule__SubSystem__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__4__Impl_in_rule__SubSystem__Group__413504);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__4__Impl_in_rule__SubSystem__Group__412136);
             rule__SubSystem__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__5_in_rule__SubSystem__Group__413507);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__5_in_rule__SubSystem__Group__412139);
             rule__SubSystem__Group__5();
 
             state._fsp--;
@@ -17825,20 +16078,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6803:1: rule__SubSystem__Group__4__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6100:1: rule__SubSystem__Group__4__Impl : ( '{' ) ;
     public final void rule__SubSystem__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6807:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6808:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6104:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6105:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6808:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6809:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6105:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6106:1: '{'
             {
              before(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_4()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__SubSystem__Group__4__Impl13535); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__SubSystem__Group__4__Impl12167); 
              after(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_4()); 
 
             }
@@ -17862,21 +16115,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6822:1: rule__SubSystem__Group__5 : rule__SubSystem__Group__5__Impl rule__SubSystem__Group__6 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6119:1: rule__SubSystem__Group__5 : rule__SubSystem__Group__5__Impl rule__SubSystem__Group__6 ;
     public final void rule__SubSystem__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6826:1: ( rule__SubSystem__Group__5__Impl rule__SubSystem__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6827:2: rule__SubSystem__Group__5__Impl rule__SubSystem__Group__6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6123:1: ( rule__SubSystem__Group__5__Impl rule__SubSystem__Group__6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6124:2: rule__SubSystem__Group__5__Impl rule__SubSystem__Group__6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__5__Impl_in_rule__SubSystem__Group__513566);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__5__Impl_in_rule__SubSystem__Group__512198);
             rule__SubSystem__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__6_in_rule__SubSystem__Group__513569);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__6_in_rule__SubSystem__Group__512201);
             rule__SubSystem__Group__6();
 
             state._fsp--;
@@ -17900,31 +16153,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6834:1: rule__SubSystem__Group__5__Impl : ( ( rule__SubSystem__Group_5__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6131:1: rule__SubSystem__Group__5__Impl : ( ( rule__SubSystem__Group_5__0 )? ) ;
     public final void rule__SubSystem__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6838:1: ( ( ( rule__SubSystem__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6839:1: ( ( rule__SubSystem__Group_5__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6135:1: ( ( ( rule__SubSystem__Group_5__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6136:1: ( ( rule__SubSystem__Group_5__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6839:1: ( ( rule__SubSystem__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6840:1: ( rule__SubSystem__Group_5__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6136:1: ( ( rule__SubSystem__Group_5__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6137:1: ( rule__SubSystem__Group_5__0 )?
             {
              before(grammarAccess.getSubSystemAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6841:1: ( rule__SubSystem__Group_5__0 )?
-            int alt47=2;
-            int LA47_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6138:1: ( rule__SubSystem__Group_5__0 )?
+            int alt43=2;
+            int LA43_0 = input.LA(1);
 
-            if ( (LA47_0==32) ) {
-                alt47=1;
+            if ( (LA43_0==29) ) {
+                alt43=1;
             }
-            switch (alt47) {
+            switch (alt43) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6841:2: rule__SubSystem__Group_5__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6138:2: rule__SubSystem__Group_5__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__0_in_rule__SubSystem__Group__5__Impl13596);
+                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__0_in_rule__SubSystem__Group__5__Impl12228);
                     rule__SubSystem__Group_5__0();
 
                     state._fsp--;
@@ -17958,21 +16211,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6851:1: rule__SubSystem__Group__6 : rule__SubSystem__Group__6__Impl rule__SubSystem__Group__7 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6148:1: rule__SubSystem__Group__6 : rule__SubSystem__Group__6__Impl rule__SubSystem__Group__7 ;
     public final void rule__SubSystem__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6855:1: ( rule__SubSystem__Group__6__Impl rule__SubSystem__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6856:2: rule__SubSystem__Group__6__Impl rule__SubSystem__Group__7
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6152:1: ( rule__SubSystem__Group__6__Impl rule__SubSystem__Group__7 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6153:2: rule__SubSystem__Group__6__Impl rule__SubSystem__Group__7
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__6__Impl_in_rule__SubSystem__Group__613627);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__6__Impl_in_rule__SubSystem__Group__612259);
             rule__SubSystem__Group__6__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__7_in_rule__SubSystem__Group__613630);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__7_in_rule__SubSystem__Group__612262);
             rule__SubSystem__Group__7();
 
             state._fsp--;
@@ -17996,31 +16249,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6863:1: rule__SubSystem__Group__6__Impl : ( ( rule__SubSystem__Group_6__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6160:1: rule__SubSystem__Group__6__Impl : ( ( rule__SubSystem__Group_6__0 )? ) ;
     public final void rule__SubSystem__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6867:1: ( ( ( rule__SubSystem__Group_6__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6868:1: ( ( rule__SubSystem__Group_6__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6164:1: ( ( ( rule__SubSystem__Group_6__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6165:1: ( ( rule__SubSystem__Group_6__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6868:1: ( ( rule__SubSystem__Group_6__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6869:1: ( rule__SubSystem__Group_6__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6165:1: ( ( rule__SubSystem__Group_6__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6166:1: ( rule__SubSystem__Group_6__0 )?
             {
              before(grammarAccess.getSubSystemAccess().getGroup_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6870:1: ( rule__SubSystem__Group_6__0 )?
-            int alt48=2;
-            int LA48_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6167:1: ( rule__SubSystem__Group_6__0 )?
+            int alt44=2;
+            int LA44_0 = input.LA(1);
 
-            if ( (LA48_0==49) ) {
-                alt48=1;
+            if ( (LA44_0==46) ) {
+                alt44=1;
             }
-            switch (alt48) {
+            switch (alt44) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6870:2: rule__SubSystem__Group_6__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6167:2: rule__SubSystem__Group_6__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__0_in_rule__SubSystem__Group__6__Impl13657);
+                    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__0_in_rule__SubSystem__Group__6__Impl12289);
                     rule__SubSystem__Group_6__0();
 
                     state._fsp--;
@@ -18054,16 +16307,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6880:1: rule__SubSystem__Group__7 : rule__SubSystem__Group__7__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6177:1: rule__SubSystem__Group__7 : rule__SubSystem__Group__7__Impl ;
     public final void rule__SubSystem__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6884:1: ( rule__SubSystem__Group__7__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6885:2: rule__SubSystem__Group__7__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6181:1: ( rule__SubSystem__Group__7__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6182:2: rule__SubSystem__Group__7__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__7__Impl_in_rule__SubSystem__Group__713688);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group__7__Impl_in_rule__SubSystem__Group__712320);
             rule__SubSystem__Group__7__Impl();
 
             state._fsp--;
@@ -18087,20 +16340,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6891:1: rule__SubSystem__Group__7__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6188:1: rule__SubSystem__Group__7__Impl : ( '}' ) ;
     public final void rule__SubSystem__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6895:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6896:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6192:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6193:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6896:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6897:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6193:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6194:1: '}'
             {
              before(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_7()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__SubSystem__Group__7__Impl13716); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__SubSystem__Group__7__Impl12348); 
              after(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_7()); 
 
             }
@@ -18124,21 +16377,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6926:1: rule__SubSystem__Group_2__0 : rule__SubSystem__Group_2__0__Impl rule__SubSystem__Group_2__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6223:1: rule__SubSystem__Group_2__0 : rule__SubSystem__Group_2__0__Impl rule__SubSystem__Group_2__1 ;
     public final void rule__SubSystem__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6930:1: ( rule__SubSystem__Group_2__0__Impl rule__SubSystem__Group_2__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6931:2: rule__SubSystem__Group_2__0__Impl rule__SubSystem__Group_2__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6227:1: ( rule__SubSystem__Group_2__0__Impl rule__SubSystem__Group_2__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6228:2: rule__SubSystem__Group_2__0__Impl rule__SubSystem__Group_2__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__0__Impl_in_rule__SubSystem__Group_2__013763);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__0__Impl_in_rule__SubSystem__Group_2__012395);
             rule__SubSystem__Group_2__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__1_in_rule__SubSystem__Group_2__013766);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__1_in_rule__SubSystem__Group_2__012398);
             rule__SubSystem__Group_2__1();
 
             state._fsp--;
@@ -18162,20 +16415,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6938:1: rule__SubSystem__Group_2__0__Impl : ( 'providedRoles' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6235:1: rule__SubSystem__Group_2__0__Impl : ( 'providedRoles' ) ;
     public final void rule__SubSystem__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6942:1: ( ( 'providedRoles' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6943:1: ( 'providedRoles' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6239:1: ( ( 'providedRoles' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6240:1: ( 'providedRoles' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6943:1: ( 'providedRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6944:1: 'providedRoles'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6240:1: ( 'providedRoles' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6241:1: 'providedRoles'
             {
              before(grammarAccess.getSubSystemAccess().getProvidedRolesKeyword_2_0()); 
-            match(input,33,FollowSets000.FOLLOW_33_in_rule__SubSystem__Group_2__0__Impl13794); 
+            match(input,30,FollowSets000.FOLLOW_30_in_rule__SubSystem__Group_2__0__Impl12426); 
              after(grammarAccess.getSubSystemAccess().getProvidedRolesKeyword_2_0()); 
 
             }
@@ -18199,21 +16452,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6957:1: rule__SubSystem__Group_2__1 : rule__SubSystem__Group_2__1__Impl rule__SubSystem__Group_2__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6254:1: rule__SubSystem__Group_2__1 : rule__SubSystem__Group_2__1__Impl rule__SubSystem__Group_2__2 ;
     public final void rule__SubSystem__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6961:1: ( rule__SubSystem__Group_2__1__Impl rule__SubSystem__Group_2__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6962:2: rule__SubSystem__Group_2__1__Impl rule__SubSystem__Group_2__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6258:1: ( rule__SubSystem__Group_2__1__Impl rule__SubSystem__Group_2__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6259:2: rule__SubSystem__Group_2__1__Impl rule__SubSystem__Group_2__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__1__Impl_in_rule__SubSystem__Group_2__113825);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__1__Impl_in_rule__SubSystem__Group_2__112457);
             rule__SubSystem__Group_2__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__2_in_rule__SubSystem__Group_2__113828);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__2_in_rule__SubSystem__Group_2__112460);
             rule__SubSystem__Group_2__2();
 
             state._fsp--;
@@ -18237,20 +16490,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6969:1: rule__SubSystem__Group_2__1__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6266:1: rule__SubSystem__Group_2__1__Impl : ( '{' ) ;
     public final void rule__SubSystem__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6973:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6974:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6270:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6271:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6974:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6975:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6271:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6272:1: '{'
             {
              before(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_2_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__SubSystem__Group_2__1__Impl13856); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__SubSystem__Group_2__1__Impl12488); 
              after(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_2_1()); 
 
             }
@@ -18274,21 +16527,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6988:1: rule__SubSystem__Group_2__2 : rule__SubSystem__Group_2__2__Impl rule__SubSystem__Group_2__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6285:1: rule__SubSystem__Group_2__2 : rule__SubSystem__Group_2__2__Impl rule__SubSystem__Group_2__3 ;
     public final void rule__SubSystem__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6992:1: ( rule__SubSystem__Group_2__2__Impl rule__SubSystem__Group_2__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6993:2: rule__SubSystem__Group_2__2__Impl rule__SubSystem__Group_2__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6289:1: ( rule__SubSystem__Group_2__2__Impl rule__SubSystem__Group_2__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6290:2: rule__SubSystem__Group_2__2__Impl rule__SubSystem__Group_2__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__2__Impl_in_rule__SubSystem__Group_2__213887);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__2__Impl_in_rule__SubSystem__Group_2__212519);
             rule__SubSystem__Group_2__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__3_in_rule__SubSystem__Group_2__213890);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__3_in_rule__SubSystem__Group_2__212522);
             rule__SubSystem__Group_2__3();
 
             state._fsp--;
@@ -18312,23 +16565,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7000:1: rule__SubSystem__Group_2__2__Impl : ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6297:1: rule__SubSystem__Group_2__2__Impl : ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) ) ;
     public final void rule__SubSystem__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7004:1: ( ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7005:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6301:1: ( ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6302:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7005:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7006:1: ( rule__SubSystem__ProvidedRolesAssignment_2_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6302:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6303:1: ( rule__SubSystem__ProvidedRolesAssignment_2_2 )
             {
              before(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7007:1: ( rule__SubSystem__ProvidedRolesAssignment_2_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7007:2: rule__SubSystem__ProvidedRolesAssignment_2_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6304:1: ( rule__SubSystem__ProvidedRolesAssignment_2_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6304:2: rule__SubSystem__ProvidedRolesAssignment_2_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_2_in_rule__SubSystem__Group_2__2__Impl13917);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_2_in_rule__SubSystem__Group_2__2__Impl12549);
             rule__SubSystem__ProvidedRolesAssignment_2_2();
 
             state._fsp--;
@@ -18359,21 +16612,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7017:1: rule__SubSystem__Group_2__3 : rule__SubSystem__Group_2__3__Impl rule__SubSystem__Group_2__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6314:1: rule__SubSystem__Group_2__3 : rule__SubSystem__Group_2__3__Impl rule__SubSystem__Group_2__4 ;
     public final void rule__SubSystem__Group_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7021:1: ( rule__SubSystem__Group_2__3__Impl rule__SubSystem__Group_2__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7022:2: rule__SubSystem__Group_2__3__Impl rule__SubSystem__Group_2__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6318:1: ( rule__SubSystem__Group_2__3__Impl rule__SubSystem__Group_2__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6319:2: rule__SubSystem__Group_2__3__Impl rule__SubSystem__Group_2__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__3__Impl_in_rule__SubSystem__Group_2__313947);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__3__Impl_in_rule__SubSystem__Group_2__312579);
             rule__SubSystem__Group_2__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__4_in_rule__SubSystem__Group_2__313950);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__4_in_rule__SubSystem__Group_2__312582);
             rule__SubSystem__Group_2__4();
 
             state._fsp--;
@@ -18397,35 +16650,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7029:1: rule__SubSystem__Group_2__3__Impl : ( ( rule__SubSystem__Group_2_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6326:1: rule__SubSystem__Group_2__3__Impl : ( ( rule__SubSystem__Group_2_3__0 )* ) ;
     public final void rule__SubSystem__Group_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7033:1: ( ( ( rule__SubSystem__Group_2_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7034:1: ( ( rule__SubSystem__Group_2_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6330:1: ( ( ( rule__SubSystem__Group_2_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6331:1: ( ( rule__SubSystem__Group_2_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7034:1: ( ( rule__SubSystem__Group_2_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7035:1: ( rule__SubSystem__Group_2_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6331:1: ( ( rule__SubSystem__Group_2_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6332:1: ( rule__SubSystem__Group_2_3__0 )*
             {
              before(grammarAccess.getSubSystemAccess().getGroup_2_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7036:1: ( rule__SubSystem__Group_2_3__0 )*
-            loop49:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6333:1: ( rule__SubSystem__Group_2_3__0 )*
+            loop45:
             do {
-                int alt49=2;
-                int LA49_0 = input.LA(1);
+                int alt45=2;
+                int LA45_0 = input.LA(1);
 
-                if ( (LA49_0==23) ) {
-                    alt49=1;
+                if ( (LA45_0==26) ) {
+                    alt45=1;
                 }
 
 
-                switch (alt49) {
+                switch (alt45) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7036:2: rule__SubSystem__Group_2_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6333:2: rule__SubSystem__Group_2_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__0_in_rule__SubSystem__Group_2__3__Impl13977);
+            	    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__0_in_rule__SubSystem__Group_2__3__Impl12609);
             	    rule__SubSystem__Group_2_3__0();
 
             	    state._fsp--;
@@ -18435,7 +16688,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop49;
+            	    break loop45;
                 }
             } while (true);
 
@@ -18462,16 +16715,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7046:1: rule__SubSystem__Group_2__4 : rule__SubSystem__Group_2__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6343:1: rule__SubSystem__Group_2__4 : rule__SubSystem__Group_2__4__Impl ;
     public final void rule__SubSystem__Group_2__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7050:1: ( rule__SubSystem__Group_2__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7051:2: rule__SubSystem__Group_2__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6347:1: ( rule__SubSystem__Group_2__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6348:2: rule__SubSystem__Group_2__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__4__Impl_in_rule__SubSystem__Group_2__414008);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2__4__Impl_in_rule__SubSystem__Group_2__412640);
             rule__SubSystem__Group_2__4__Impl();
 
             state._fsp--;
@@ -18495,20 +16748,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7057:1: rule__SubSystem__Group_2__4__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6354:1: rule__SubSystem__Group_2__4__Impl : ( '}' ) ;
     public final void rule__SubSystem__Group_2__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7061:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7062:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6358:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6359:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7062:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7063:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6359:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6360:1: '}'
             {
              before(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_2_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__SubSystem__Group_2__4__Impl14036); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__SubSystem__Group_2__4__Impl12668); 
              after(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_2_4()); 
 
             }
@@ -18532,21 +16785,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7086:1: rule__SubSystem__Group_2_3__0 : rule__SubSystem__Group_2_3__0__Impl rule__SubSystem__Group_2_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6383:1: rule__SubSystem__Group_2_3__0 : rule__SubSystem__Group_2_3__0__Impl rule__SubSystem__Group_2_3__1 ;
     public final void rule__SubSystem__Group_2_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7090:1: ( rule__SubSystem__Group_2_3__0__Impl rule__SubSystem__Group_2_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7091:2: rule__SubSystem__Group_2_3__0__Impl rule__SubSystem__Group_2_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6387:1: ( rule__SubSystem__Group_2_3__0__Impl rule__SubSystem__Group_2_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6388:2: rule__SubSystem__Group_2_3__0__Impl rule__SubSystem__Group_2_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__0__Impl_in_rule__SubSystem__Group_2_3__014077);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__0__Impl_in_rule__SubSystem__Group_2_3__012709);
             rule__SubSystem__Group_2_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__1_in_rule__SubSystem__Group_2_3__014080);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__1_in_rule__SubSystem__Group_2_3__012712);
             rule__SubSystem__Group_2_3__1();
 
             state._fsp--;
@@ -18570,20 +16823,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7098:1: rule__SubSystem__Group_2_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6395:1: rule__SubSystem__Group_2_3__0__Impl : ( ',' ) ;
     public final void rule__SubSystem__Group_2_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7102:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7103:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6399:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6400:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7103:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7104:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6400:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6401:1: ','
             {
              before(grammarAccess.getSubSystemAccess().getCommaKeyword_2_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__SubSystem__Group_2_3__0__Impl14108); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__SubSystem__Group_2_3__0__Impl12740); 
              after(grammarAccess.getSubSystemAccess().getCommaKeyword_2_3_0()); 
 
             }
@@ -18607,16 +16860,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7117:1: rule__SubSystem__Group_2_3__1 : rule__SubSystem__Group_2_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6414:1: rule__SubSystem__Group_2_3__1 : rule__SubSystem__Group_2_3__1__Impl ;
     public final void rule__SubSystem__Group_2_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7121:1: ( rule__SubSystem__Group_2_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7122:2: rule__SubSystem__Group_2_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6418:1: ( rule__SubSystem__Group_2_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6419:2: rule__SubSystem__Group_2_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__1__Impl_in_rule__SubSystem__Group_2_3__114139);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_2_3__1__Impl_in_rule__SubSystem__Group_2_3__112771);
             rule__SubSystem__Group_2_3__1__Impl();
 
             state._fsp--;
@@ -18640,23 +16893,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_2_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7128:1: rule__SubSystem__Group_2_3__1__Impl : ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6425:1: rule__SubSystem__Group_2_3__1__Impl : ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) ) ;
     public final void rule__SubSystem__Group_2_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7132:1: ( ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7133:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6429:1: ( ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6430:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7133:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7134:1: ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6430:1: ( ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6431:1: ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 )
             {
              before(grammarAccess.getSubSystemAccess().getProvidedRolesAssignment_2_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7135:1: ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7135:2: rule__SubSystem__ProvidedRolesAssignment_2_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6432:1: ( rule__SubSystem__ProvidedRolesAssignment_2_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6432:2: rule__SubSystem__ProvidedRolesAssignment_2_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_3_1_in_rule__SubSystem__Group_2_3__1__Impl14166);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_3_1_in_rule__SubSystem__Group_2_3__1__Impl12798);
             rule__SubSystem__ProvidedRolesAssignment_2_3_1();
 
             state._fsp--;
@@ -18687,21 +16940,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7149:1: rule__SubSystem__Group_3__0 : rule__SubSystem__Group_3__0__Impl rule__SubSystem__Group_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6446:1: rule__SubSystem__Group_3__0 : rule__SubSystem__Group_3__0__Impl rule__SubSystem__Group_3__1 ;
     public final void rule__SubSystem__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7153:1: ( rule__SubSystem__Group_3__0__Impl rule__SubSystem__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7154:2: rule__SubSystem__Group_3__0__Impl rule__SubSystem__Group_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6450:1: ( rule__SubSystem__Group_3__0__Impl rule__SubSystem__Group_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6451:2: rule__SubSystem__Group_3__0__Impl rule__SubSystem__Group_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__0__Impl_in_rule__SubSystem__Group_3__014200);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__0__Impl_in_rule__SubSystem__Group_3__012832);
             rule__SubSystem__Group_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__1_in_rule__SubSystem__Group_3__014203);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__1_in_rule__SubSystem__Group_3__012835);
             rule__SubSystem__Group_3__1();
 
             state._fsp--;
@@ -18725,20 +16978,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7161:1: rule__SubSystem__Group_3__0__Impl : ( 'requiredRoles' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6458:1: rule__SubSystem__Group_3__0__Impl : ( 'requiredRoles' ) ;
     public final void rule__SubSystem__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7165:1: ( ( 'requiredRoles' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7166:1: ( 'requiredRoles' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6462:1: ( ( 'requiredRoles' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6463:1: ( 'requiredRoles' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7166:1: ( 'requiredRoles' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7167:1: 'requiredRoles'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6463:1: ( 'requiredRoles' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6464:1: 'requiredRoles'
             {
              before(grammarAccess.getSubSystemAccess().getRequiredRolesKeyword_3_0()); 
-            match(input,34,FollowSets000.FOLLOW_34_in_rule__SubSystem__Group_3__0__Impl14231); 
+            match(input,31,FollowSets000.FOLLOW_31_in_rule__SubSystem__Group_3__0__Impl12863); 
              after(grammarAccess.getSubSystemAccess().getRequiredRolesKeyword_3_0()); 
 
             }
@@ -18762,21 +17015,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7180:1: rule__SubSystem__Group_3__1 : rule__SubSystem__Group_3__1__Impl rule__SubSystem__Group_3__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6477:1: rule__SubSystem__Group_3__1 : rule__SubSystem__Group_3__1__Impl rule__SubSystem__Group_3__2 ;
     public final void rule__SubSystem__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7184:1: ( rule__SubSystem__Group_3__1__Impl rule__SubSystem__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7185:2: rule__SubSystem__Group_3__1__Impl rule__SubSystem__Group_3__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6481:1: ( rule__SubSystem__Group_3__1__Impl rule__SubSystem__Group_3__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6482:2: rule__SubSystem__Group_3__1__Impl rule__SubSystem__Group_3__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__1__Impl_in_rule__SubSystem__Group_3__114262);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__1__Impl_in_rule__SubSystem__Group_3__112894);
             rule__SubSystem__Group_3__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__2_in_rule__SubSystem__Group_3__114265);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__2_in_rule__SubSystem__Group_3__112897);
             rule__SubSystem__Group_3__2();
 
             state._fsp--;
@@ -18800,20 +17053,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7192:1: rule__SubSystem__Group_3__1__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6489:1: rule__SubSystem__Group_3__1__Impl : ( '{' ) ;
     public final void rule__SubSystem__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7196:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7197:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6493:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6494:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7197:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7198:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6494:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6495:1: '{'
             {
              before(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_3_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__SubSystem__Group_3__1__Impl14293); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__SubSystem__Group_3__1__Impl12925); 
              after(grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_3_1()); 
 
             }
@@ -18837,21 +17090,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7211:1: rule__SubSystem__Group_3__2 : rule__SubSystem__Group_3__2__Impl rule__SubSystem__Group_3__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6508:1: rule__SubSystem__Group_3__2 : rule__SubSystem__Group_3__2__Impl rule__SubSystem__Group_3__3 ;
     public final void rule__SubSystem__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7215:1: ( rule__SubSystem__Group_3__2__Impl rule__SubSystem__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7216:2: rule__SubSystem__Group_3__2__Impl rule__SubSystem__Group_3__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6512:1: ( rule__SubSystem__Group_3__2__Impl rule__SubSystem__Group_3__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6513:2: rule__SubSystem__Group_3__2__Impl rule__SubSystem__Group_3__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__2__Impl_in_rule__SubSystem__Group_3__214324);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__2__Impl_in_rule__SubSystem__Group_3__212956);
             rule__SubSystem__Group_3__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__3_in_rule__SubSystem__Group_3__214327);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__3_in_rule__SubSystem__Group_3__212959);
             rule__SubSystem__Group_3__3();
 
             state._fsp--;
@@ -18875,23 +17128,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7223:1: rule__SubSystem__Group_3__2__Impl : ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6520:1: rule__SubSystem__Group_3__2__Impl : ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) ) ;
     public final void rule__SubSystem__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7227:1: ( ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7228:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6524:1: ( ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6525:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7228:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7229:1: ( rule__SubSystem__RequiredRolesAssignment_3_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6525:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6526:1: ( rule__SubSystem__RequiredRolesAssignment_3_2 )
             {
              before(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7230:1: ( rule__SubSystem__RequiredRolesAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7230:2: rule__SubSystem__RequiredRolesAssignment_3_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6527:1: ( rule__SubSystem__RequiredRolesAssignment_3_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6527:2: rule__SubSystem__RequiredRolesAssignment_3_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_2_in_rule__SubSystem__Group_3__2__Impl14354);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_2_in_rule__SubSystem__Group_3__2__Impl12986);
             rule__SubSystem__RequiredRolesAssignment_3_2();
 
             state._fsp--;
@@ -18922,21 +17175,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7240:1: rule__SubSystem__Group_3__3 : rule__SubSystem__Group_3__3__Impl rule__SubSystem__Group_3__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6537:1: rule__SubSystem__Group_3__3 : rule__SubSystem__Group_3__3__Impl rule__SubSystem__Group_3__4 ;
     public final void rule__SubSystem__Group_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7244:1: ( rule__SubSystem__Group_3__3__Impl rule__SubSystem__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7245:2: rule__SubSystem__Group_3__3__Impl rule__SubSystem__Group_3__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6541:1: ( rule__SubSystem__Group_3__3__Impl rule__SubSystem__Group_3__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6542:2: rule__SubSystem__Group_3__3__Impl rule__SubSystem__Group_3__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__3__Impl_in_rule__SubSystem__Group_3__314384);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__3__Impl_in_rule__SubSystem__Group_3__313016);
             rule__SubSystem__Group_3__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__4_in_rule__SubSystem__Group_3__314387);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__4_in_rule__SubSystem__Group_3__313019);
             rule__SubSystem__Group_3__4();
 
             state._fsp--;
@@ -18960,35 +17213,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7252:1: rule__SubSystem__Group_3__3__Impl : ( ( rule__SubSystem__Group_3_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6549:1: rule__SubSystem__Group_3__3__Impl : ( ( rule__SubSystem__Group_3_3__0 )* ) ;
     public final void rule__SubSystem__Group_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7256:1: ( ( ( rule__SubSystem__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7257:1: ( ( rule__SubSystem__Group_3_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6553:1: ( ( ( rule__SubSystem__Group_3_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6554:1: ( ( rule__SubSystem__Group_3_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7257:1: ( ( rule__SubSystem__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7258:1: ( rule__SubSystem__Group_3_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6554:1: ( ( rule__SubSystem__Group_3_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6555:1: ( rule__SubSystem__Group_3_3__0 )*
             {
              before(grammarAccess.getSubSystemAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7259:1: ( rule__SubSystem__Group_3_3__0 )*
-            loop50:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6556:1: ( rule__SubSystem__Group_3_3__0 )*
+            loop46:
             do {
-                int alt50=2;
-                int LA50_0 = input.LA(1);
+                int alt46=2;
+                int LA46_0 = input.LA(1);
 
-                if ( (LA50_0==23) ) {
-                    alt50=1;
+                if ( (LA46_0==26) ) {
+                    alt46=1;
                 }
 
 
-                switch (alt50) {
+                switch (alt46) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7259:2: rule__SubSystem__Group_3_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6556:2: rule__SubSystem__Group_3_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__0_in_rule__SubSystem__Group_3__3__Impl14414);
+            	    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__0_in_rule__SubSystem__Group_3__3__Impl13046);
             	    rule__SubSystem__Group_3_3__0();
 
             	    state._fsp--;
@@ -18998,7 +17251,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop50;
+            	    break loop46;
                 }
             } while (true);
 
@@ -19025,16 +17278,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7269:1: rule__SubSystem__Group_3__4 : rule__SubSystem__Group_3__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6566:1: rule__SubSystem__Group_3__4 : rule__SubSystem__Group_3__4__Impl ;
     public final void rule__SubSystem__Group_3__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7273:1: ( rule__SubSystem__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7274:2: rule__SubSystem__Group_3__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6570:1: ( rule__SubSystem__Group_3__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6571:2: rule__SubSystem__Group_3__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__4__Impl_in_rule__SubSystem__Group_3__414445);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3__4__Impl_in_rule__SubSystem__Group_3__413077);
             rule__SubSystem__Group_3__4__Impl();
 
             state._fsp--;
@@ -19058,20 +17311,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7280:1: rule__SubSystem__Group_3__4__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6577:1: rule__SubSystem__Group_3__4__Impl : ( '}' ) ;
     public final void rule__SubSystem__Group_3__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7284:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7285:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6581:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6582:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7285:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7286:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6582:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6583:1: '}'
             {
              before(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_3_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__SubSystem__Group_3__4__Impl14473); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__SubSystem__Group_3__4__Impl13105); 
              after(grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_3_4()); 
 
             }
@@ -19095,21 +17348,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7309:1: rule__SubSystem__Group_3_3__0 : rule__SubSystem__Group_3_3__0__Impl rule__SubSystem__Group_3_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6606:1: rule__SubSystem__Group_3_3__0 : rule__SubSystem__Group_3_3__0__Impl rule__SubSystem__Group_3_3__1 ;
     public final void rule__SubSystem__Group_3_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7313:1: ( rule__SubSystem__Group_3_3__0__Impl rule__SubSystem__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7314:2: rule__SubSystem__Group_3_3__0__Impl rule__SubSystem__Group_3_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6610:1: ( rule__SubSystem__Group_3_3__0__Impl rule__SubSystem__Group_3_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6611:2: rule__SubSystem__Group_3_3__0__Impl rule__SubSystem__Group_3_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__0__Impl_in_rule__SubSystem__Group_3_3__014514);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__0__Impl_in_rule__SubSystem__Group_3_3__013146);
             rule__SubSystem__Group_3_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__1_in_rule__SubSystem__Group_3_3__014517);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__1_in_rule__SubSystem__Group_3_3__013149);
             rule__SubSystem__Group_3_3__1();
 
             state._fsp--;
@@ -19133,20 +17386,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7321:1: rule__SubSystem__Group_3_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6618:1: rule__SubSystem__Group_3_3__0__Impl : ( ',' ) ;
     public final void rule__SubSystem__Group_3_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7325:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7326:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6622:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6623:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7326:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7327:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6623:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6624:1: ','
             {
              before(grammarAccess.getSubSystemAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__SubSystem__Group_3_3__0__Impl14545); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__SubSystem__Group_3_3__0__Impl13177); 
              after(grammarAccess.getSubSystemAccess().getCommaKeyword_3_3_0()); 
 
             }
@@ -19170,16 +17423,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7340:1: rule__SubSystem__Group_3_3__1 : rule__SubSystem__Group_3_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6637:1: rule__SubSystem__Group_3_3__1 : rule__SubSystem__Group_3_3__1__Impl ;
     public final void rule__SubSystem__Group_3_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7344:1: ( rule__SubSystem__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7345:2: rule__SubSystem__Group_3_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6641:1: ( rule__SubSystem__Group_3_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6642:2: rule__SubSystem__Group_3_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__1__Impl_in_rule__SubSystem__Group_3_3__114576);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_3_3__1__Impl_in_rule__SubSystem__Group_3_3__113208);
             rule__SubSystem__Group_3_3__1__Impl();
 
             state._fsp--;
@@ -19203,23 +17456,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7351:1: rule__SubSystem__Group_3_3__1__Impl : ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6648:1: rule__SubSystem__Group_3_3__1__Impl : ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) ) ;
     public final void rule__SubSystem__Group_3_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7355:1: ( ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7356:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6652:1: ( ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6653:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7356:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7357:1: ( rule__SubSystem__RequiredRolesAssignment_3_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6653:1: ( ( rule__SubSystem__RequiredRolesAssignment_3_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6654:1: ( rule__SubSystem__RequiredRolesAssignment_3_3_1 )
             {
              before(grammarAccess.getSubSystemAccess().getRequiredRolesAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7358:1: ( rule__SubSystem__RequiredRolesAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7358:2: rule__SubSystem__RequiredRolesAssignment_3_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6655:1: ( rule__SubSystem__RequiredRolesAssignment_3_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6655:2: rule__SubSystem__RequiredRolesAssignment_3_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_3_1_in_rule__SubSystem__Group_3_3__1__Impl14603);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_3_1_in_rule__SubSystem__Group_3_3__1__Impl13235);
             rule__SubSystem__RequiredRolesAssignment_3_3_1();
 
             state._fsp--;
@@ -19250,21 +17503,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7372:1: rule__SubSystem__Group_5__0 : rule__SubSystem__Group_5__0__Impl rule__SubSystem__Group_5__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6669:1: rule__SubSystem__Group_5__0 : rule__SubSystem__Group_5__0__Impl rule__SubSystem__Group_5__1 ;
     public final void rule__SubSystem__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7376:1: ( rule__SubSystem__Group_5__0__Impl rule__SubSystem__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7377:2: rule__SubSystem__Group_5__0__Impl rule__SubSystem__Group_5__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6673:1: ( rule__SubSystem__Group_5__0__Impl rule__SubSystem__Group_5__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6674:2: rule__SubSystem__Group_5__0__Impl rule__SubSystem__Group_5__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__0__Impl_in_rule__SubSystem__Group_5__014637);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__0__Impl_in_rule__SubSystem__Group_5__013269);
             rule__SubSystem__Group_5__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__1_in_rule__SubSystem__Group_5__014640);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__1_in_rule__SubSystem__Group_5__013272);
             rule__SubSystem__Group_5__1();
 
             state._fsp--;
@@ -19288,20 +17541,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7384:1: rule__SubSystem__Group_5__0__Impl : ( 'relationship' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6681:1: rule__SubSystem__Group_5__0__Impl : ( 'relationship' ) ;
     public final void rule__SubSystem__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7388:1: ( ( 'relationship' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7389:1: ( 'relationship' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6685:1: ( ( 'relationship' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6686:1: ( 'relationship' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7389:1: ( 'relationship' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7390:1: 'relationship'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6686:1: ( 'relationship' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6687:1: 'relationship'
             {
              before(grammarAccess.getSubSystemAccess().getRelationshipKeyword_5_0()); 
-            match(input,32,FollowSets000.FOLLOW_32_in_rule__SubSystem__Group_5__0__Impl14668); 
+            match(input,29,FollowSets000.FOLLOW_29_in_rule__SubSystem__Group_5__0__Impl13300); 
              after(grammarAccess.getSubSystemAccess().getRelationshipKeyword_5_0()); 
 
             }
@@ -19325,21 +17578,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7403:1: rule__SubSystem__Group_5__1 : rule__SubSystem__Group_5__1__Impl rule__SubSystem__Group_5__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6700:1: rule__SubSystem__Group_5__1 : rule__SubSystem__Group_5__1__Impl rule__SubSystem__Group_5__2 ;
     public final void rule__SubSystem__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7407:1: ( rule__SubSystem__Group_5__1__Impl rule__SubSystem__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7408:2: rule__SubSystem__Group_5__1__Impl rule__SubSystem__Group_5__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6704:1: ( rule__SubSystem__Group_5__1__Impl rule__SubSystem__Group_5__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6705:2: rule__SubSystem__Group_5__1__Impl rule__SubSystem__Group_5__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__1__Impl_in_rule__SubSystem__Group_5__114699);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__1__Impl_in_rule__SubSystem__Group_5__113331);
             rule__SubSystem__Group_5__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__2_in_rule__SubSystem__Group_5__114702);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__2_in_rule__SubSystem__Group_5__113334);
             rule__SubSystem__Group_5__2();
 
             state._fsp--;
@@ -19363,20 +17616,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7415:1: rule__SubSystem__Group_5__1__Impl : ( '(' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6712:1: rule__SubSystem__Group_5__1__Impl : ( '(' ) ;
     public final void rule__SubSystem__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7419:1: ( ( '(' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7420:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6716:1: ( ( '(' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6717:1: ( '(' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7420:1: ( '(' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7421:1: '('
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6717:1: ( '(' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6718:1: '('
             {
              before(grammarAccess.getSubSystemAccess().getLeftParenthesisKeyword_5_1()); 
-            match(input,28,FollowSets000.FOLLOW_28_in_rule__SubSystem__Group_5__1__Impl14730); 
+            match(input,24,FollowSets000.FOLLOW_24_in_rule__SubSystem__Group_5__1__Impl13362); 
              after(grammarAccess.getSubSystemAccess().getLeftParenthesisKeyword_5_1()); 
 
             }
@@ -19400,21 +17653,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7434:1: rule__SubSystem__Group_5__2 : rule__SubSystem__Group_5__2__Impl rule__SubSystem__Group_5__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6731:1: rule__SubSystem__Group_5__2 : rule__SubSystem__Group_5__2__Impl rule__SubSystem__Group_5__3 ;
     public final void rule__SubSystem__Group_5__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7438:1: ( rule__SubSystem__Group_5__2__Impl rule__SubSystem__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7439:2: rule__SubSystem__Group_5__2__Impl rule__SubSystem__Group_5__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6735:1: ( rule__SubSystem__Group_5__2__Impl rule__SubSystem__Group_5__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6736:2: rule__SubSystem__Group_5__2__Impl rule__SubSystem__Group_5__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__2__Impl_in_rule__SubSystem__Group_5__214761);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__2__Impl_in_rule__SubSystem__Group_5__213393);
             rule__SubSystem__Group_5__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__3_in_rule__SubSystem__Group_5__214764);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__3_in_rule__SubSystem__Group_5__213396);
             rule__SubSystem__Group_5__3();
 
             state._fsp--;
@@ -19438,23 +17691,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7446:1: rule__SubSystem__Group_5__2__Impl : ( ( rule__SubSystem__RelationshipAssignment_5_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6743:1: rule__SubSystem__Group_5__2__Impl : ( ( rule__SubSystem__RelationshipAssignment_5_2 ) ) ;
     public final void rule__SubSystem__Group_5__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7450:1: ( ( ( rule__SubSystem__RelationshipAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7451:1: ( ( rule__SubSystem__RelationshipAssignment_5_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6747:1: ( ( ( rule__SubSystem__RelationshipAssignment_5_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6748:1: ( ( rule__SubSystem__RelationshipAssignment_5_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7451:1: ( ( rule__SubSystem__RelationshipAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7452:1: ( rule__SubSystem__RelationshipAssignment_5_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6748:1: ( ( rule__SubSystem__RelationshipAssignment_5_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6749:1: ( rule__SubSystem__RelationshipAssignment_5_2 )
             {
              before(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7453:1: ( rule__SubSystem__RelationshipAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7453:2: rule__SubSystem__RelationshipAssignment_5_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6750:1: ( rule__SubSystem__RelationshipAssignment_5_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6750:2: rule__SubSystem__RelationshipAssignment_5_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RelationshipAssignment_5_2_in_rule__SubSystem__Group_5__2__Impl14791);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RelationshipAssignment_5_2_in_rule__SubSystem__Group_5__2__Impl13423);
             rule__SubSystem__RelationshipAssignment_5_2();
 
             state._fsp--;
@@ -19485,21 +17738,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7463:1: rule__SubSystem__Group_5__3 : rule__SubSystem__Group_5__3__Impl rule__SubSystem__Group_5__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6760:1: rule__SubSystem__Group_5__3 : rule__SubSystem__Group_5__3__Impl rule__SubSystem__Group_5__4 ;
     public final void rule__SubSystem__Group_5__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7467:1: ( rule__SubSystem__Group_5__3__Impl rule__SubSystem__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7468:2: rule__SubSystem__Group_5__3__Impl rule__SubSystem__Group_5__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6764:1: ( rule__SubSystem__Group_5__3__Impl rule__SubSystem__Group_5__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6765:2: rule__SubSystem__Group_5__3__Impl rule__SubSystem__Group_5__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__3__Impl_in_rule__SubSystem__Group_5__314821);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__3__Impl_in_rule__SubSystem__Group_5__313453);
             rule__SubSystem__Group_5__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__4_in_rule__SubSystem__Group_5__314824);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__4_in_rule__SubSystem__Group_5__313456);
             rule__SubSystem__Group_5__4();
 
             state._fsp--;
@@ -19523,35 +17776,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7475:1: rule__SubSystem__Group_5__3__Impl : ( ( rule__SubSystem__Group_5_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6772:1: rule__SubSystem__Group_5__3__Impl : ( ( rule__SubSystem__Group_5_3__0 )* ) ;
     public final void rule__SubSystem__Group_5__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7479:1: ( ( ( rule__SubSystem__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7480:1: ( ( rule__SubSystem__Group_5_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6776:1: ( ( ( rule__SubSystem__Group_5_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6777:1: ( ( rule__SubSystem__Group_5_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7480:1: ( ( rule__SubSystem__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7481:1: ( rule__SubSystem__Group_5_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6777:1: ( ( rule__SubSystem__Group_5_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6778:1: ( rule__SubSystem__Group_5_3__0 )*
             {
              before(grammarAccess.getSubSystemAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7482:1: ( rule__SubSystem__Group_5_3__0 )*
-            loop51:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6779:1: ( rule__SubSystem__Group_5_3__0 )*
+            loop47:
             do {
-                int alt51=2;
-                int LA51_0 = input.LA(1);
+                int alt47=2;
+                int LA47_0 = input.LA(1);
 
-                if ( (LA51_0==23) ) {
-                    alt51=1;
+                if ( (LA47_0==26) ) {
+                    alt47=1;
                 }
 
 
-                switch (alt51) {
+                switch (alt47) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7482:2: rule__SubSystem__Group_5_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6779:2: rule__SubSystem__Group_5_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__0_in_rule__SubSystem__Group_5__3__Impl14851);
+            	    pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__0_in_rule__SubSystem__Group_5__3__Impl13483);
             	    rule__SubSystem__Group_5_3__0();
 
             	    state._fsp--;
@@ -19561,7 +17814,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop51;
+            	    break loop47;
                 }
             } while (true);
 
@@ -19588,16 +17841,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7492:1: rule__SubSystem__Group_5__4 : rule__SubSystem__Group_5__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6789:1: rule__SubSystem__Group_5__4 : rule__SubSystem__Group_5__4__Impl ;
     public final void rule__SubSystem__Group_5__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7496:1: ( rule__SubSystem__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7497:2: rule__SubSystem__Group_5__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6793:1: ( rule__SubSystem__Group_5__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6794:2: rule__SubSystem__Group_5__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__4__Impl_in_rule__SubSystem__Group_5__414882);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5__4__Impl_in_rule__SubSystem__Group_5__413514);
             rule__SubSystem__Group_5__4__Impl();
 
             state._fsp--;
@@ -19621,20 +17874,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7503:1: rule__SubSystem__Group_5__4__Impl : ( ')' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6800:1: rule__SubSystem__Group_5__4__Impl : ( ')' ) ;
     public final void rule__SubSystem__Group_5__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7507:1: ( ( ')' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7508:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6804:1: ( ( ')' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6805:1: ( ')' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7508:1: ( ')' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7509:1: ')'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6805:1: ( ')' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6806:1: ')'
             {
              before(grammarAccess.getSubSystemAccess().getRightParenthesisKeyword_5_4()); 
-            match(input,29,FollowSets000.FOLLOW_29_in_rule__SubSystem__Group_5__4__Impl14910); 
+            match(input,25,FollowSets000.FOLLOW_25_in_rule__SubSystem__Group_5__4__Impl13542); 
              after(grammarAccess.getSubSystemAccess().getRightParenthesisKeyword_5_4()); 
 
             }
@@ -19658,21 +17911,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7532:1: rule__SubSystem__Group_5_3__0 : rule__SubSystem__Group_5_3__0__Impl rule__SubSystem__Group_5_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6829:1: rule__SubSystem__Group_5_3__0 : rule__SubSystem__Group_5_3__0__Impl rule__SubSystem__Group_5_3__1 ;
     public final void rule__SubSystem__Group_5_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7536:1: ( rule__SubSystem__Group_5_3__0__Impl rule__SubSystem__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7537:2: rule__SubSystem__Group_5_3__0__Impl rule__SubSystem__Group_5_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6833:1: ( rule__SubSystem__Group_5_3__0__Impl rule__SubSystem__Group_5_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6834:2: rule__SubSystem__Group_5_3__0__Impl rule__SubSystem__Group_5_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__0__Impl_in_rule__SubSystem__Group_5_3__014951);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__0__Impl_in_rule__SubSystem__Group_5_3__013583);
             rule__SubSystem__Group_5_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__1_in_rule__SubSystem__Group_5_3__014954);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__1_in_rule__SubSystem__Group_5_3__013586);
             rule__SubSystem__Group_5_3__1();
 
             state._fsp--;
@@ -19696,20 +17949,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7544:1: rule__SubSystem__Group_5_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6841:1: rule__SubSystem__Group_5_3__0__Impl : ( ',' ) ;
     public final void rule__SubSystem__Group_5_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7548:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7549:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6845:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6846:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7549:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7550:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6846:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6847:1: ','
             {
              before(grammarAccess.getSubSystemAccess().getCommaKeyword_5_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__SubSystem__Group_5_3__0__Impl14982); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__SubSystem__Group_5_3__0__Impl13614); 
              after(grammarAccess.getSubSystemAccess().getCommaKeyword_5_3_0()); 
 
             }
@@ -19733,16 +17986,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7563:1: rule__SubSystem__Group_5_3__1 : rule__SubSystem__Group_5_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6860:1: rule__SubSystem__Group_5_3__1 : rule__SubSystem__Group_5_3__1__Impl ;
     public final void rule__SubSystem__Group_5_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7567:1: ( rule__SubSystem__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7568:2: rule__SubSystem__Group_5_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6864:1: ( rule__SubSystem__Group_5_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6865:2: rule__SubSystem__Group_5_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__1__Impl_in_rule__SubSystem__Group_5_3__115013);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_5_3__1__Impl_in_rule__SubSystem__Group_5_3__113645);
             rule__SubSystem__Group_5_3__1__Impl();
 
             state._fsp--;
@@ -19766,23 +18019,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7574:1: rule__SubSystem__Group_5_3__1__Impl : ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6871:1: rule__SubSystem__Group_5_3__1__Impl : ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) ) ;
     public final void rule__SubSystem__Group_5_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7578:1: ( ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7579:1: ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6875:1: ( ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6876:1: ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7579:1: ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7580:1: ( rule__SubSystem__RelationshipAssignment_5_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6876:1: ( ( rule__SubSystem__RelationshipAssignment_5_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6877:1: ( rule__SubSystem__RelationshipAssignment_5_3_1 )
             {
              before(grammarAccess.getSubSystemAccess().getRelationshipAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7581:1: ( rule__SubSystem__RelationshipAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7581:2: rule__SubSystem__RelationshipAssignment_5_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6878:1: ( rule__SubSystem__RelationshipAssignment_5_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6878:2: rule__SubSystem__RelationshipAssignment_5_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RelationshipAssignment_5_3_1_in_rule__SubSystem__Group_5_3__1__Impl15040);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__RelationshipAssignment_5_3_1_in_rule__SubSystem__Group_5_3__1__Impl13672);
             rule__SubSystem__RelationshipAssignment_5_3_1();
 
             state._fsp--;
@@ -19813,21 +18066,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_6__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7595:1: rule__SubSystem__Group_6__0 : rule__SubSystem__Group_6__0__Impl rule__SubSystem__Group_6__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6892:1: rule__SubSystem__Group_6__0 : rule__SubSystem__Group_6__0__Impl rule__SubSystem__Group_6__1 ;
     public final void rule__SubSystem__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7599:1: ( rule__SubSystem__Group_6__0__Impl rule__SubSystem__Group_6__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7600:2: rule__SubSystem__Group_6__0__Impl rule__SubSystem__Group_6__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6896:1: ( rule__SubSystem__Group_6__0__Impl rule__SubSystem__Group_6__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6897:2: rule__SubSystem__Group_6__0__Impl rule__SubSystem__Group_6__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__0__Impl_in_rule__SubSystem__Group_6__015074);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__0__Impl_in_rule__SubSystem__Group_6__013706);
             rule__SubSystem__Group_6__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__1_in_rule__SubSystem__Group_6__015077);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__1_in_rule__SubSystem__Group_6__013709);
             rule__SubSystem__Group_6__1();
 
             state._fsp--;
@@ -19851,20 +18104,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_6__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7607:1: rule__SubSystem__Group_6__0__Impl : ( 'assembly' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6904:1: rule__SubSystem__Group_6__0__Impl : ( 'assembly' ) ;
     public final void rule__SubSystem__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7611:1: ( ( 'assembly' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7612:1: ( 'assembly' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6908:1: ( ( 'assembly' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6909:1: ( 'assembly' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7612:1: ( 'assembly' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7613:1: 'assembly'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6909:1: ( 'assembly' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6910:1: 'assembly'
             {
              before(grammarAccess.getSubSystemAccess().getAssemblyKeyword_6_0()); 
-            match(input,49,FollowSets000.FOLLOW_49_in_rule__SubSystem__Group_6__0__Impl15105); 
+            match(input,46,FollowSets000.FOLLOW_46_in_rule__SubSystem__Group_6__0__Impl13737); 
              after(grammarAccess.getSubSystemAccess().getAssemblyKeyword_6_0()); 
 
             }
@@ -19888,16 +18141,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_6__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7626:1: rule__SubSystem__Group_6__1 : rule__SubSystem__Group_6__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6923:1: rule__SubSystem__Group_6__1 : rule__SubSystem__Group_6__1__Impl ;
     public final void rule__SubSystem__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7630:1: ( rule__SubSystem__Group_6__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7631:2: rule__SubSystem__Group_6__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6927:1: ( rule__SubSystem__Group_6__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6928:2: rule__SubSystem__Group_6__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__1__Impl_in_rule__SubSystem__Group_6__115136);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__Group_6__1__Impl_in_rule__SubSystem__Group_6__113768);
             rule__SubSystem__Group_6__1__Impl();
 
             state._fsp--;
@@ -19921,23 +18174,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__Group_6__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7637:1: rule__SubSystem__Group_6__1__Impl : ( ( rule__SubSystem__AssemblyAssignment_6_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6934:1: rule__SubSystem__Group_6__1__Impl : ( ( rule__SubSystem__AssemblyAssignment_6_1 ) ) ;
     public final void rule__SubSystem__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7641:1: ( ( ( rule__SubSystem__AssemblyAssignment_6_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7642:1: ( ( rule__SubSystem__AssemblyAssignment_6_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6938:1: ( ( ( rule__SubSystem__AssemblyAssignment_6_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6939:1: ( ( rule__SubSystem__AssemblyAssignment_6_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7642:1: ( ( rule__SubSystem__AssemblyAssignment_6_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7643:1: ( rule__SubSystem__AssemblyAssignment_6_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6939:1: ( ( rule__SubSystem__AssemblyAssignment_6_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6940:1: ( rule__SubSystem__AssemblyAssignment_6_1 )
             {
              before(grammarAccess.getSubSystemAccess().getAssemblyAssignment_6_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7644:1: ( rule__SubSystem__AssemblyAssignment_6_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7644:2: rule__SubSystem__AssemblyAssignment_6_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6941:1: ( rule__SubSystem__AssemblyAssignment_6_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6941:2: rule__SubSystem__AssemblyAssignment_6_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__AssemblyAssignment_6_1_in_rule__SubSystem__Group_6__1__Impl15163);
+            pushFollow(FollowSets000.FOLLOW_rule__SubSystem__AssemblyAssignment_6_1_in_rule__SubSystem__Group_6__1__Impl13795);
             rule__SubSystem__AssemblyAssignment_6_1();
 
             state._fsp--;
@@ -19968,21 +18221,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7658:1: rule__ComposedStructureAssembly__Group__0 : rule__ComposedStructureAssembly__Group__0__Impl rule__ComposedStructureAssembly__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6955:1: rule__ComposedStructureAssembly__Group__0 : rule__ComposedStructureAssembly__Group__0__Impl rule__ComposedStructureAssembly__Group__1 ;
     public final void rule__ComposedStructureAssembly__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7662:1: ( rule__ComposedStructureAssembly__Group__0__Impl rule__ComposedStructureAssembly__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7663:2: rule__ComposedStructureAssembly__Group__0__Impl rule__ComposedStructureAssembly__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6959:1: ( rule__ComposedStructureAssembly__Group__0__Impl rule__ComposedStructureAssembly__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6960:2: rule__ComposedStructureAssembly__Group__0__Impl rule__ComposedStructureAssembly__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__0__Impl_in_rule__ComposedStructureAssembly__Group__015197);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__0__Impl_in_rule__ComposedStructureAssembly__Group__013829);
             rule__ComposedStructureAssembly__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__1_in_rule__ComposedStructureAssembly__Group__015200);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__1_in_rule__ComposedStructureAssembly__Group__013832);
             rule__ComposedStructureAssembly__Group__1();
 
             state._fsp--;
@@ -20006,21 +18259,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7670:1: rule__ComposedStructureAssembly__Group__0__Impl : ( () ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6967:1: rule__ComposedStructureAssembly__Group__0__Impl : ( () ) ;
     public final void rule__ComposedStructureAssembly__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7674:1: ( ( () ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7675:1: ( () )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6971:1: ( ( () ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6972:1: ( () )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7675:1: ( () )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7676:1: ()
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6972:1: ( () )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6973:1: ()
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyAction_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7677:1: ()
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7679:1: 
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6974:1: ()
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6976:1: 
             {
             }
 
@@ -20043,21 +18296,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7689:1: rule__ComposedStructureAssembly__Group__1 : rule__ComposedStructureAssembly__Group__1__Impl rule__ComposedStructureAssembly__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6986:1: rule__ComposedStructureAssembly__Group__1 : rule__ComposedStructureAssembly__Group__1__Impl rule__ComposedStructureAssembly__Group__2 ;
     public final void rule__ComposedStructureAssembly__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7693:1: ( rule__ComposedStructureAssembly__Group__1__Impl rule__ComposedStructureAssembly__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7694:2: rule__ComposedStructureAssembly__Group__1__Impl rule__ComposedStructureAssembly__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6990:1: ( rule__ComposedStructureAssembly__Group__1__Impl rule__ComposedStructureAssembly__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6991:2: rule__ComposedStructureAssembly__Group__1__Impl rule__ComposedStructureAssembly__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__1__Impl_in_rule__ComposedStructureAssembly__Group__115258);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__1__Impl_in_rule__ComposedStructureAssembly__Group__113890);
             rule__ComposedStructureAssembly__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__2_in_rule__ComposedStructureAssembly__Group__115261);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__2_in_rule__ComposedStructureAssembly__Group__113893);
             rule__ComposedStructureAssembly__Group__2();
 
             state._fsp--;
@@ -20081,20 +18334,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7701:1: rule__ComposedStructureAssembly__Group__1__Impl : ( 'ComposedStructureAssembly' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:6998:1: rule__ComposedStructureAssembly__Group__1__Impl : ( 'ComposedStructureAssembly' ) ;
     public final void rule__ComposedStructureAssembly__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7705:1: ( ( 'ComposedStructureAssembly' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7706:1: ( 'ComposedStructureAssembly' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7002:1: ( ( 'ComposedStructureAssembly' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7003:1: ( 'ComposedStructureAssembly' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7706:1: ( 'ComposedStructureAssembly' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7707:1: 'ComposedStructureAssembly'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7003:1: ( 'ComposedStructureAssembly' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7004:1: 'ComposedStructureAssembly'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyKeyword_1()); 
-            match(input,51,FollowSets000.FOLLOW_51_in_rule__ComposedStructureAssembly__Group__1__Impl15289); 
+            match(input,48,FollowSets000.FOLLOW_48_in_rule__ComposedStructureAssembly__Group__1__Impl13921); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyKeyword_1()); 
 
             }
@@ -20118,21 +18371,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7720:1: rule__ComposedStructureAssembly__Group__2 : rule__ComposedStructureAssembly__Group__2__Impl rule__ComposedStructureAssembly__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7017:1: rule__ComposedStructureAssembly__Group__2 : rule__ComposedStructureAssembly__Group__2__Impl rule__ComposedStructureAssembly__Group__3 ;
     public final void rule__ComposedStructureAssembly__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7724:1: ( rule__ComposedStructureAssembly__Group__2__Impl rule__ComposedStructureAssembly__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7725:2: rule__ComposedStructureAssembly__Group__2__Impl rule__ComposedStructureAssembly__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7021:1: ( rule__ComposedStructureAssembly__Group__2__Impl rule__ComposedStructureAssembly__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7022:2: rule__ComposedStructureAssembly__Group__2__Impl rule__ComposedStructureAssembly__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__2__Impl_in_rule__ComposedStructureAssembly__Group__215320);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__2__Impl_in_rule__ComposedStructureAssembly__Group__213952);
             rule__ComposedStructureAssembly__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__3_in_rule__ComposedStructureAssembly__Group__215323);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__3_in_rule__ComposedStructureAssembly__Group__213955);
             rule__ComposedStructureAssembly__Group__3();
 
             state._fsp--;
@@ -20156,20 +18409,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7732:1: rule__ComposedStructureAssembly__Group__2__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7029:1: rule__ComposedStructureAssembly__Group__2__Impl : ( '{' ) ;
     public final void rule__ComposedStructureAssembly__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7736:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7737:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7033:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7034:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7737:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7738:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7034:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7035:1: '{'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group__2__Impl15351); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group__2__Impl13983); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_2()); 
 
             }
@@ -20193,21 +18446,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7751:1: rule__ComposedStructureAssembly__Group__3 : rule__ComposedStructureAssembly__Group__3__Impl rule__ComposedStructureAssembly__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7048:1: rule__ComposedStructureAssembly__Group__3 : rule__ComposedStructureAssembly__Group__3__Impl rule__ComposedStructureAssembly__Group__4 ;
     public final void rule__ComposedStructureAssembly__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7755:1: ( rule__ComposedStructureAssembly__Group__3__Impl rule__ComposedStructureAssembly__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7756:2: rule__ComposedStructureAssembly__Group__3__Impl rule__ComposedStructureAssembly__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7052:1: ( rule__ComposedStructureAssembly__Group__3__Impl rule__ComposedStructureAssembly__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7053:2: rule__ComposedStructureAssembly__Group__3__Impl rule__ComposedStructureAssembly__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__3__Impl_in_rule__ComposedStructureAssembly__Group__315382);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__3__Impl_in_rule__ComposedStructureAssembly__Group__314014);
             rule__ComposedStructureAssembly__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__4_in_rule__ComposedStructureAssembly__Group__315385);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__4_in_rule__ComposedStructureAssembly__Group__314017);
             rule__ComposedStructureAssembly__Group__4();
 
             state._fsp--;
@@ -20231,31 +18484,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7763:1: rule__ComposedStructureAssembly__Group__3__Impl : ( ( rule__ComposedStructureAssembly__Group_3__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7060:1: rule__ComposedStructureAssembly__Group__3__Impl : ( ( rule__ComposedStructureAssembly__Group_3__0 )? ) ;
     public final void rule__ComposedStructureAssembly__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7767:1: ( ( ( rule__ComposedStructureAssembly__Group_3__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7768:1: ( ( rule__ComposedStructureAssembly__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7064:1: ( ( ( rule__ComposedStructureAssembly__Group_3__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7065:1: ( ( rule__ComposedStructureAssembly__Group_3__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7768:1: ( ( rule__ComposedStructureAssembly__Group_3__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7769:1: ( rule__ComposedStructureAssembly__Group_3__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7065:1: ( ( rule__ComposedStructureAssembly__Group_3__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7066:1: ( rule__ComposedStructureAssembly__Group_3__0 )?
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7770:1: ( rule__ComposedStructureAssembly__Group_3__0 )?
-            int alt52=2;
-            int LA52_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7067:1: ( rule__ComposedStructureAssembly__Group_3__0 )?
+            int alt48=2;
+            int LA48_0 = input.LA(1);
 
-            if ( (LA52_0==52) ) {
-                alt52=1;
+            if ( (LA48_0==49) ) {
+                alt48=1;
             }
-            switch (alt52) {
+            switch (alt48) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7770:2: rule__ComposedStructureAssembly__Group_3__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7067:2: rule__ComposedStructureAssembly__Group_3__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__0_in_rule__ComposedStructureAssembly__Group__3__Impl15412);
+                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__0_in_rule__ComposedStructureAssembly__Group__3__Impl14044);
                     rule__ComposedStructureAssembly__Group_3__0();
 
                     state._fsp--;
@@ -20289,21 +18542,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7780:1: rule__ComposedStructureAssembly__Group__4 : rule__ComposedStructureAssembly__Group__4__Impl rule__ComposedStructureAssembly__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7077:1: rule__ComposedStructureAssembly__Group__4 : rule__ComposedStructureAssembly__Group__4__Impl rule__ComposedStructureAssembly__Group__5 ;
     public final void rule__ComposedStructureAssembly__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7784:1: ( rule__ComposedStructureAssembly__Group__4__Impl rule__ComposedStructureAssembly__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7785:2: rule__ComposedStructureAssembly__Group__4__Impl rule__ComposedStructureAssembly__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7081:1: ( rule__ComposedStructureAssembly__Group__4__Impl rule__ComposedStructureAssembly__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7082:2: rule__ComposedStructureAssembly__Group__4__Impl rule__ComposedStructureAssembly__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__4__Impl_in_rule__ComposedStructureAssembly__Group__415443);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__4__Impl_in_rule__ComposedStructureAssembly__Group__414075);
             rule__ComposedStructureAssembly__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__5_in_rule__ComposedStructureAssembly__Group__415446);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__5_in_rule__ComposedStructureAssembly__Group__414078);
             rule__ComposedStructureAssembly__Group__5();
 
             state._fsp--;
@@ -20327,31 +18580,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7792:1: rule__ComposedStructureAssembly__Group__4__Impl : ( ( rule__ComposedStructureAssembly__Group_4__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7089:1: rule__ComposedStructureAssembly__Group__4__Impl : ( ( rule__ComposedStructureAssembly__Group_4__0 )? ) ;
     public final void rule__ComposedStructureAssembly__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7796:1: ( ( ( rule__ComposedStructureAssembly__Group_4__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7797:1: ( ( rule__ComposedStructureAssembly__Group_4__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7093:1: ( ( ( rule__ComposedStructureAssembly__Group_4__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7094:1: ( ( rule__ComposedStructureAssembly__Group_4__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7797:1: ( ( rule__ComposedStructureAssembly__Group_4__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7798:1: ( rule__ComposedStructureAssembly__Group_4__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7094:1: ( ( rule__ComposedStructureAssembly__Group_4__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7095:1: ( rule__ComposedStructureAssembly__Group_4__0 )?
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7799:1: ( rule__ComposedStructureAssembly__Group_4__0 )?
-            int alt53=2;
-            int LA53_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7096:1: ( rule__ComposedStructureAssembly__Group_4__0 )?
+            int alt49=2;
+            int LA49_0 = input.LA(1);
 
-            if ( (LA53_0==53) ) {
-                alt53=1;
+            if ( (LA49_0==50) ) {
+                alt49=1;
             }
-            switch (alt53) {
+            switch (alt49) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7799:2: rule__ComposedStructureAssembly__Group_4__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7096:2: rule__ComposedStructureAssembly__Group_4__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__0_in_rule__ComposedStructureAssembly__Group__4__Impl15473);
+                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__0_in_rule__ComposedStructureAssembly__Group__4__Impl14105);
                     rule__ComposedStructureAssembly__Group_4__0();
 
                     state._fsp--;
@@ -20385,21 +18638,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7809:1: rule__ComposedStructureAssembly__Group__5 : rule__ComposedStructureAssembly__Group__5__Impl rule__ComposedStructureAssembly__Group__6 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7106:1: rule__ComposedStructureAssembly__Group__5 : rule__ComposedStructureAssembly__Group__5__Impl rule__ComposedStructureAssembly__Group__6 ;
     public final void rule__ComposedStructureAssembly__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7813:1: ( rule__ComposedStructureAssembly__Group__5__Impl rule__ComposedStructureAssembly__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7814:2: rule__ComposedStructureAssembly__Group__5__Impl rule__ComposedStructureAssembly__Group__6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7110:1: ( rule__ComposedStructureAssembly__Group__5__Impl rule__ComposedStructureAssembly__Group__6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7111:2: rule__ComposedStructureAssembly__Group__5__Impl rule__ComposedStructureAssembly__Group__6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__5__Impl_in_rule__ComposedStructureAssembly__Group__515504);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__5__Impl_in_rule__ComposedStructureAssembly__Group__514136);
             rule__ComposedStructureAssembly__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__6_in_rule__ComposedStructureAssembly__Group__515507);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__6_in_rule__ComposedStructureAssembly__Group__514139);
             rule__ComposedStructureAssembly__Group__6();
 
             state._fsp--;
@@ -20423,31 +18676,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7821:1: rule__ComposedStructureAssembly__Group__5__Impl : ( ( rule__ComposedStructureAssembly__Group_5__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7118:1: rule__ComposedStructureAssembly__Group__5__Impl : ( ( rule__ComposedStructureAssembly__Group_5__0 )? ) ;
     public final void rule__ComposedStructureAssembly__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7825:1: ( ( ( rule__ComposedStructureAssembly__Group_5__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7826:1: ( ( rule__ComposedStructureAssembly__Group_5__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7122:1: ( ( ( rule__ComposedStructureAssembly__Group_5__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7123:1: ( ( rule__ComposedStructureAssembly__Group_5__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7826:1: ( ( rule__ComposedStructureAssembly__Group_5__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7827:1: ( rule__ComposedStructureAssembly__Group_5__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7123:1: ( ( rule__ComposedStructureAssembly__Group_5__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7124:1: ( rule__ComposedStructureAssembly__Group_5__0 )?
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7828:1: ( rule__ComposedStructureAssembly__Group_5__0 )?
-            int alt54=2;
-            int LA54_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7125:1: ( rule__ComposedStructureAssembly__Group_5__0 )?
+            int alt50=2;
+            int LA50_0 = input.LA(1);
 
-            if ( (LA54_0==54) ) {
-                alt54=1;
+            if ( (LA50_0==51) ) {
+                alt50=1;
             }
-            switch (alt54) {
+            switch (alt50) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7828:2: rule__ComposedStructureAssembly__Group_5__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7125:2: rule__ComposedStructureAssembly__Group_5__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__0_in_rule__ComposedStructureAssembly__Group__5__Impl15534);
+                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__0_in_rule__ComposedStructureAssembly__Group__5__Impl14166);
                     rule__ComposedStructureAssembly__Group_5__0();
 
                     state._fsp--;
@@ -20481,21 +18734,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7838:1: rule__ComposedStructureAssembly__Group__6 : rule__ComposedStructureAssembly__Group__6__Impl rule__ComposedStructureAssembly__Group__7 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7135:1: rule__ComposedStructureAssembly__Group__6 : rule__ComposedStructureAssembly__Group__6__Impl rule__ComposedStructureAssembly__Group__7 ;
     public final void rule__ComposedStructureAssembly__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7842:1: ( rule__ComposedStructureAssembly__Group__6__Impl rule__ComposedStructureAssembly__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7843:2: rule__ComposedStructureAssembly__Group__6__Impl rule__ComposedStructureAssembly__Group__7
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7139:1: ( rule__ComposedStructureAssembly__Group__6__Impl rule__ComposedStructureAssembly__Group__7 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7140:2: rule__ComposedStructureAssembly__Group__6__Impl rule__ComposedStructureAssembly__Group__7
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__6__Impl_in_rule__ComposedStructureAssembly__Group__615565);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__6__Impl_in_rule__ComposedStructureAssembly__Group__614197);
             rule__ComposedStructureAssembly__Group__6__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__7_in_rule__ComposedStructureAssembly__Group__615568);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__7_in_rule__ComposedStructureAssembly__Group__614200);
             rule__ComposedStructureAssembly__Group__7();
 
             state._fsp--;
@@ -20519,31 +18772,31 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7850:1: rule__ComposedStructureAssembly__Group__6__Impl : ( ( rule__ComposedStructureAssembly__Group_6__0 )? ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7147:1: rule__ComposedStructureAssembly__Group__6__Impl : ( ( rule__ComposedStructureAssembly__Group_6__0 )? ) ;
     public final void rule__ComposedStructureAssembly__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7854:1: ( ( ( rule__ComposedStructureAssembly__Group_6__0 )? ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7855:1: ( ( rule__ComposedStructureAssembly__Group_6__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7151:1: ( ( ( rule__ComposedStructureAssembly__Group_6__0 )? ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7152:1: ( ( rule__ComposedStructureAssembly__Group_6__0 )? )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7855:1: ( ( rule__ComposedStructureAssembly__Group_6__0 )? )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7856:1: ( rule__ComposedStructureAssembly__Group_6__0 )?
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7152:1: ( ( rule__ComposedStructureAssembly__Group_6__0 )? )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7153:1: ( rule__ComposedStructureAssembly__Group_6__0 )?
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7857:1: ( rule__ComposedStructureAssembly__Group_6__0 )?
-            int alt55=2;
-            int LA55_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7154:1: ( rule__ComposedStructureAssembly__Group_6__0 )?
+            int alt51=2;
+            int LA51_0 = input.LA(1);
 
-            if ( (LA55_0==55) ) {
-                alt55=1;
+            if ( (LA51_0==52) ) {
+                alt51=1;
             }
-            switch (alt55) {
+            switch (alt51) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7857:2: rule__ComposedStructureAssembly__Group_6__0
+                    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7154:2: rule__ComposedStructureAssembly__Group_6__0
                     {
-                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__0_in_rule__ComposedStructureAssembly__Group__6__Impl15595);
+                    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__0_in_rule__ComposedStructureAssembly__Group__6__Impl14227);
                     rule__ComposedStructureAssembly__Group_6__0();
 
                     state._fsp--;
@@ -20577,16 +18830,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7867:1: rule__ComposedStructureAssembly__Group__7 : rule__ComposedStructureAssembly__Group__7__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7164:1: rule__ComposedStructureAssembly__Group__7 : rule__ComposedStructureAssembly__Group__7__Impl ;
     public final void rule__ComposedStructureAssembly__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7871:1: ( rule__ComposedStructureAssembly__Group__7__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7872:2: rule__ComposedStructureAssembly__Group__7__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7168:1: ( rule__ComposedStructureAssembly__Group__7__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7169:2: rule__ComposedStructureAssembly__Group__7__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__7__Impl_in_rule__ComposedStructureAssembly__Group__715626);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group__7__Impl_in_rule__ComposedStructureAssembly__Group__714258);
             rule__ComposedStructureAssembly__Group__7__Impl();
 
             state._fsp--;
@@ -20610,20 +18863,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7878:1: rule__ComposedStructureAssembly__Group__7__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7175:1: rule__ComposedStructureAssembly__Group__7__Impl : ( '}' ) ;
     public final void rule__ComposedStructureAssembly__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7882:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7883:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7179:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7180:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7883:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7884:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7180:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7181:1: '}'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_7()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group__7__Impl15654); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group__7__Impl14286); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_7()); 
 
             }
@@ -20647,21 +18900,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7913:1: rule__ComposedStructureAssembly__Group_3__0 : rule__ComposedStructureAssembly__Group_3__0__Impl rule__ComposedStructureAssembly__Group_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7210:1: rule__ComposedStructureAssembly__Group_3__0 : rule__ComposedStructureAssembly__Group_3__0__Impl rule__ComposedStructureAssembly__Group_3__1 ;
     public final void rule__ComposedStructureAssembly__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7917:1: ( rule__ComposedStructureAssembly__Group_3__0__Impl rule__ComposedStructureAssembly__Group_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7918:2: rule__ComposedStructureAssembly__Group_3__0__Impl rule__ComposedStructureAssembly__Group_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7214:1: ( rule__ComposedStructureAssembly__Group_3__0__Impl rule__ComposedStructureAssembly__Group_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7215:2: rule__ComposedStructureAssembly__Group_3__0__Impl rule__ComposedStructureAssembly__Group_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3__015701);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3__014333);
             rule__ComposedStructureAssembly__Group_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__1_in_rule__ComposedStructureAssembly__Group_3__015704);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__1_in_rule__ComposedStructureAssembly__Group_3__014336);
             rule__ComposedStructureAssembly__Group_3__1();
 
             state._fsp--;
@@ -20685,20 +18938,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7925:1: rule__ComposedStructureAssembly__Group_3__0__Impl : ( 'assemblyContexts' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7222:1: rule__ComposedStructureAssembly__Group_3__0__Impl : ( 'assemblyContexts' ) ;
     public final void rule__ComposedStructureAssembly__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7929:1: ( ( 'assemblyContexts' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7930:1: ( 'assemblyContexts' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7226:1: ( ( 'assemblyContexts' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7227:1: ( 'assemblyContexts' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7930:1: ( 'assemblyContexts' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7931:1: 'assemblyContexts'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7227:1: ( 'assemblyContexts' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7228:1: 'assemblyContexts'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsKeyword_3_0()); 
-            match(input,52,FollowSets000.FOLLOW_52_in_rule__ComposedStructureAssembly__Group_3__0__Impl15732); 
+            match(input,49,FollowSets000.FOLLOW_49_in_rule__ComposedStructureAssembly__Group_3__0__Impl14364); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsKeyword_3_0()); 
 
             }
@@ -20722,21 +18975,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7944:1: rule__ComposedStructureAssembly__Group_3__1 : rule__ComposedStructureAssembly__Group_3__1__Impl rule__ComposedStructureAssembly__Group_3__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7241:1: rule__ComposedStructureAssembly__Group_3__1 : rule__ComposedStructureAssembly__Group_3__1__Impl rule__ComposedStructureAssembly__Group_3__2 ;
     public final void rule__ComposedStructureAssembly__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7948:1: ( rule__ComposedStructureAssembly__Group_3__1__Impl rule__ComposedStructureAssembly__Group_3__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7949:2: rule__ComposedStructureAssembly__Group_3__1__Impl rule__ComposedStructureAssembly__Group_3__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7245:1: ( rule__ComposedStructureAssembly__Group_3__1__Impl rule__ComposedStructureAssembly__Group_3__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7246:2: rule__ComposedStructureAssembly__Group_3__1__Impl rule__ComposedStructureAssembly__Group_3__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3__115763);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3__114395);
             rule__ComposedStructureAssembly__Group_3__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__2_in_rule__ComposedStructureAssembly__Group_3__115766);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__2_in_rule__ComposedStructureAssembly__Group_3__114398);
             rule__ComposedStructureAssembly__Group_3__2();
 
             state._fsp--;
@@ -20760,20 +19013,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7956:1: rule__ComposedStructureAssembly__Group_3__1__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7253:1: rule__ComposedStructureAssembly__Group_3__1__Impl : ( '{' ) ;
     public final void rule__ComposedStructureAssembly__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7960:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7961:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7257:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7258:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7961:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7962:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7258:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7259:1: '{'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_3_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_3__1__Impl15794); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_3__1__Impl14426); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_3_1()); 
 
             }
@@ -20797,21 +19050,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7975:1: rule__ComposedStructureAssembly__Group_3__2 : rule__ComposedStructureAssembly__Group_3__2__Impl rule__ComposedStructureAssembly__Group_3__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7272:1: rule__ComposedStructureAssembly__Group_3__2 : rule__ComposedStructureAssembly__Group_3__2__Impl rule__ComposedStructureAssembly__Group_3__3 ;
     public final void rule__ComposedStructureAssembly__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7979:1: ( rule__ComposedStructureAssembly__Group_3__2__Impl rule__ComposedStructureAssembly__Group_3__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7980:2: rule__ComposedStructureAssembly__Group_3__2__Impl rule__ComposedStructureAssembly__Group_3__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7276:1: ( rule__ComposedStructureAssembly__Group_3__2__Impl rule__ComposedStructureAssembly__Group_3__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7277:2: rule__ComposedStructureAssembly__Group_3__2__Impl rule__ComposedStructureAssembly__Group_3__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__2__Impl_in_rule__ComposedStructureAssembly__Group_3__215825);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__2__Impl_in_rule__ComposedStructureAssembly__Group_3__214457);
             rule__ComposedStructureAssembly__Group_3__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__3_in_rule__ComposedStructureAssembly__Group_3__215828);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__3_in_rule__ComposedStructureAssembly__Group_3__214460);
             rule__ComposedStructureAssembly__Group_3__3();
 
             state._fsp--;
@@ -20835,23 +19088,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7987:1: rule__ComposedStructureAssembly__Group_3__2__Impl : ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7284:1: rule__ComposedStructureAssembly__Group_3__2__Impl : ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) ) ;
     public final void rule__ComposedStructureAssembly__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7991:1: ( ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7992:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7288:1: ( ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7289:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7992:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7993:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7289:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7290:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 )
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7994:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7994:2: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7291:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7291:2: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2_in_rule__ComposedStructureAssembly__Group_3__2__Impl15855);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2_in_rule__ComposedStructureAssembly__Group_3__2__Impl14487);
             rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2();
 
             state._fsp--;
@@ -20882,21 +19135,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8004:1: rule__ComposedStructureAssembly__Group_3__3 : rule__ComposedStructureAssembly__Group_3__3__Impl rule__ComposedStructureAssembly__Group_3__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7301:1: rule__ComposedStructureAssembly__Group_3__3 : rule__ComposedStructureAssembly__Group_3__3__Impl rule__ComposedStructureAssembly__Group_3__4 ;
     public final void rule__ComposedStructureAssembly__Group_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8008:1: ( rule__ComposedStructureAssembly__Group_3__3__Impl rule__ComposedStructureAssembly__Group_3__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8009:2: rule__ComposedStructureAssembly__Group_3__3__Impl rule__ComposedStructureAssembly__Group_3__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7305:1: ( rule__ComposedStructureAssembly__Group_3__3__Impl rule__ComposedStructureAssembly__Group_3__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7306:2: rule__ComposedStructureAssembly__Group_3__3__Impl rule__ComposedStructureAssembly__Group_3__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__3__Impl_in_rule__ComposedStructureAssembly__Group_3__315885);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__3__Impl_in_rule__ComposedStructureAssembly__Group_3__314517);
             rule__ComposedStructureAssembly__Group_3__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__4_in_rule__ComposedStructureAssembly__Group_3__315888);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__4_in_rule__ComposedStructureAssembly__Group_3__314520);
             rule__ComposedStructureAssembly__Group_3__4();
 
             state._fsp--;
@@ -20920,35 +19173,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8016:1: rule__ComposedStructureAssembly__Group_3__3__Impl : ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7313:1: rule__ComposedStructureAssembly__Group_3__3__Impl : ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* ) ;
     public final void rule__ComposedStructureAssembly__Group_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8020:1: ( ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8021:1: ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7317:1: ( ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7318:1: ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8021:1: ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8022:1: ( rule__ComposedStructureAssembly__Group_3_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7318:1: ( ( rule__ComposedStructureAssembly__Group_3_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7319:1: ( rule__ComposedStructureAssembly__Group_3_3__0 )*
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_3_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8023:1: ( rule__ComposedStructureAssembly__Group_3_3__0 )*
-            loop56:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7320:1: ( rule__ComposedStructureAssembly__Group_3_3__0 )*
+            loop52:
             do {
-                int alt56=2;
-                int LA56_0 = input.LA(1);
+                int alt52=2;
+                int LA52_0 = input.LA(1);
 
-                if ( (LA56_0==23) ) {
-                    alt56=1;
+                if ( (LA52_0==26) ) {
+                    alt52=1;
                 }
 
 
-                switch (alt56) {
+                switch (alt52) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8023:2: rule__ComposedStructureAssembly__Group_3_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7320:2: rule__ComposedStructureAssembly__Group_3_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0_in_rule__ComposedStructureAssembly__Group_3__3__Impl15915);
+            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0_in_rule__ComposedStructureAssembly__Group_3__3__Impl14547);
             	    rule__ComposedStructureAssembly__Group_3_3__0();
 
             	    state._fsp--;
@@ -20958,7 +19211,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop56;
+            	    break loop52;
                 }
             } while (true);
 
@@ -20985,16 +19238,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8033:1: rule__ComposedStructureAssembly__Group_3__4 : rule__ComposedStructureAssembly__Group_3__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7330:1: rule__ComposedStructureAssembly__Group_3__4 : rule__ComposedStructureAssembly__Group_3__4__Impl ;
     public final void rule__ComposedStructureAssembly__Group_3__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8037:1: ( rule__ComposedStructureAssembly__Group_3__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8038:2: rule__ComposedStructureAssembly__Group_3__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7334:1: ( rule__ComposedStructureAssembly__Group_3__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7335:2: rule__ComposedStructureAssembly__Group_3__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__4__Impl_in_rule__ComposedStructureAssembly__Group_3__415946);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3__4__Impl_in_rule__ComposedStructureAssembly__Group_3__414578);
             rule__ComposedStructureAssembly__Group_3__4__Impl();
 
             state._fsp--;
@@ -21018,20 +19271,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8044:1: rule__ComposedStructureAssembly__Group_3__4__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7341:1: rule__ComposedStructureAssembly__Group_3__4__Impl : ( '}' ) ;
     public final void rule__ComposedStructureAssembly__Group_3__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8048:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8049:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7345:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7346:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8049:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8050:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7346:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7347:1: '}'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_3_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_3__4__Impl15974); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_3__4__Impl14606); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_3_4()); 
 
             }
@@ -21055,21 +19308,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8073:1: rule__ComposedStructureAssembly__Group_3_3__0 : rule__ComposedStructureAssembly__Group_3_3__0__Impl rule__ComposedStructureAssembly__Group_3_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7370:1: rule__ComposedStructureAssembly__Group_3_3__0 : rule__ComposedStructureAssembly__Group_3_3__0__Impl rule__ComposedStructureAssembly__Group_3_3__1 ;
     public final void rule__ComposedStructureAssembly__Group_3_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8077:1: ( rule__ComposedStructureAssembly__Group_3_3__0__Impl rule__ComposedStructureAssembly__Group_3_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8078:2: rule__ComposedStructureAssembly__Group_3_3__0__Impl rule__ComposedStructureAssembly__Group_3_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7374:1: ( rule__ComposedStructureAssembly__Group_3_3__0__Impl rule__ComposedStructureAssembly__Group_3_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7375:2: rule__ComposedStructureAssembly__Group_3_3__0__Impl rule__ComposedStructureAssembly__Group_3_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3_3__016015);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3_3__014647);
             rule__ComposedStructureAssembly__Group_3_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1_in_rule__ComposedStructureAssembly__Group_3_3__016018);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1_in_rule__ComposedStructureAssembly__Group_3_3__014650);
             rule__ComposedStructureAssembly__Group_3_3__1();
 
             state._fsp--;
@@ -21093,20 +19346,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8085:1: rule__ComposedStructureAssembly__Group_3_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7382:1: rule__ComposedStructureAssembly__Group_3_3__0__Impl : ( ',' ) ;
     public final void rule__ComposedStructureAssembly__Group_3_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8089:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8090:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7386:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7387:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8090:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8091:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7387:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7388:1: ','
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_3_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__ComposedStructureAssembly__Group_3_3__0__Impl16046); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__ComposedStructureAssembly__Group_3_3__0__Impl14678); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_3_3_0()); 
 
             }
@@ -21130,16 +19383,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8104:1: rule__ComposedStructureAssembly__Group_3_3__1 : rule__ComposedStructureAssembly__Group_3_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7401:1: rule__ComposedStructureAssembly__Group_3_3__1 : rule__ComposedStructureAssembly__Group_3_3__1__Impl ;
     public final void rule__ComposedStructureAssembly__Group_3_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8108:1: ( rule__ComposedStructureAssembly__Group_3_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8109:2: rule__ComposedStructureAssembly__Group_3_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7405:1: ( rule__ComposedStructureAssembly__Group_3_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7406:2: rule__ComposedStructureAssembly__Group_3_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3_3__116077);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3_3__114709);
             rule__ComposedStructureAssembly__Group_3_3__1__Impl();
 
             state._fsp--;
@@ -21163,23 +19416,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_3_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8115:1: rule__ComposedStructureAssembly__Group_3_3__1__Impl : ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7412:1: rule__ComposedStructureAssembly__Group_3_3__1__Impl : ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) ) ;
     public final void rule__ComposedStructureAssembly__Group_3_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8119:1: ( ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8120:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7416:1: ( ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7417:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8120:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8121:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7417:1: ( ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7418:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 )
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssignment_3_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8122:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8122:2: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7419:1: ( rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7419:2: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1_in_rule__ComposedStructureAssembly__Group_3_3__1__Impl16104);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1_in_rule__ComposedStructureAssembly__Group_3_3__1__Impl14736);
             rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1();
 
             state._fsp--;
@@ -21210,21 +19463,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8136:1: rule__ComposedStructureAssembly__Group_4__0 : rule__ComposedStructureAssembly__Group_4__0__Impl rule__ComposedStructureAssembly__Group_4__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7433:1: rule__ComposedStructureAssembly__Group_4__0 : rule__ComposedStructureAssembly__Group_4__0__Impl rule__ComposedStructureAssembly__Group_4__1 ;
     public final void rule__ComposedStructureAssembly__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8140:1: ( rule__ComposedStructureAssembly__Group_4__0__Impl rule__ComposedStructureAssembly__Group_4__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8141:2: rule__ComposedStructureAssembly__Group_4__0__Impl rule__ComposedStructureAssembly__Group_4__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7437:1: ( rule__ComposedStructureAssembly__Group_4__0__Impl rule__ComposedStructureAssembly__Group_4__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7438:2: rule__ComposedStructureAssembly__Group_4__0__Impl rule__ComposedStructureAssembly__Group_4__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__0__Impl_in_rule__ComposedStructureAssembly__Group_4__016138);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__0__Impl_in_rule__ComposedStructureAssembly__Group_4__014770);
             rule__ComposedStructureAssembly__Group_4__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__1_in_rule__ComposedStructureAssembly__Group_4__016141);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__1_in_rule__ComposedStructureAssembly__Group_4__014773);
             rule__ComposedStructureAssembly__Group_4__1();
 
             state._fsp--;
@@ -21248,20 +19501,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8148:1: rule__ComposedStructureAssembly__Group_4__0__Impl : ( 'assemblyConnectors' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7445:1: rule__ComposedStructureAssembly__Group_4__0__Impl : ( 'assemblyConnectors' ) ;
     public final void rule__ComposedStructureAssembly__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8152:1: ( ( 'assemblyConnectors' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8153:1: ( 'assemblyConnectors' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7449:1: ( ( 'assemblyConnectors' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7450:1: ( 'assemblyConnectors' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8153:1: ( 'assemblyConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8154:1: 'assemblyConnectors'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7450:1: ( 'assemblyConnectors' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7451:1: 'assemblyConnectors'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsKeyword_4_0()); 
-            match(input,53,FollowSets000.FOLLOW_53_in_rule__ComposedStructureAssembly__Group_4__0__Impl16169); 
+            match(input,50,FollowSets000.FOLLOW_50_in_rule__ComposedStructureAssembly__Group_4__0__Impl14801); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsKeyword_4_0()); 
 
             }
@@ -21285,21 +19538,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8167:1: rule__ComposedStructureAssembly__Group_4__1 : rule__ComposedStructureAssembly__Group_4__1__Impl rule__ComposedStructureAssembly__Group_4__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7464:1: rule__ComposedStructureAssembly__Group_4__1 : rule__ComposedStructureAssembly__Group_4__1__Impl rule__ComposedStructureAssembly__Group_4__2 ;
     public final void rule__ComposedStructureAssembly__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8171:1: ( rule__ComposedStructureAssembly__Group_4__1__Impl rule__ComposedStructureAssembly__Group_4__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8172:2: rule__ComposedStructureAssembly__Group_4__1__Impl rule__ComposedStructureAssembly__Group_4__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7468:1: ( rule__ComposedStructureAssembly__Group_4__1__Impl rule__ComposedStructureAssembly__Group_4__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7469:2: rule__ComposedStructureAssembly__Group_4__1__Impl rule__ComposedStructureAssembly__Group_4__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__1__Impl_in_rule__ComposedStructureAssembly__Group_4__116200);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__1__Impl_in_rule__ComposedStructureAssembly__Group_4__114832);
             rule__ComposedStructureAssembly__Group_4__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__2_in_rule__ComposedStructureAssembly__Group_4__116203);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__2_in_rule__ComposedStructureAssembly__Group_4__114835);
             rule__ComposedStructureAssembly__Group_4__2();
 
             state._fsp--;
@@ -21323,20 +19576,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8179:1: rule__ComposedStructureAssembly__Group_4__1__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7476:1: rule__ComposedStructureAssembly__Group_4__1__Impl : ( '{' ) ;
     public final void rule__ComposedStructureAssembly__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8183:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8184:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7480:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7481:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8184:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8185:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7481:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7482:1: '{'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_4_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_4__1__Impl16231); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_4__1__Impl14863); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_4_1()); 
 
             }
@@ -21360,21 +19613,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8198:1: rule__ComposedStructureAssembly__Group_4__2 : rule__ComposedStructureAssembly__Group_4__2__Impl rule__ComposedStructureAssembly__Group_4__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7495:1: rule__ComposedStructureAssembly__Group_4__2 : rule__ComposedStructureAssembly__Group_4__2__Impl rule__ComposedStructureAssembly__Group_4__3 ;
     public final void rule__ComposedStructureAssembly__Group_4__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8202:1: ( rule__ComposedStructureAssembly__Group_4__2__Impl rule__ComposedStructureAssembly__Group_4__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8203:2: rule__ComposedStructureAssembly__Group_4__2__Impl rule__ComposedStructureAssembly__Group_4__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7499:1: ( rule__ComposedStructureAssembly__Group_4__2__Impl rule__ComposedStructureAssembly__Group_4__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7500:2: rule__ComposedStructureAssembly__Group_4__2__Impl rule__ComposedStructureAssembly__Group_4__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__2__Impl_in_rule__ComposedStructureAssembly__Group_4__216262);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__2__Impl_in_rule__ComposedStructureAssembly__Group_4__214894);
             rule__ComposedStructureAssembly__Group_4__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__3_in_rule__ComposedStructureAssembly__Group_4__216265);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__3_in_rule__ComposedStructureAssembly__Group_4__214897);
             rule__ComposedStructureAssembly__Group_4__3();
 
             state._fsp--;
@@ -21398,23 +19651,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8210:1: rule__ComposedStructureAssembly__Group_4__2__Impl : ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7507:1: rule__ComposedStructureAssembly__Group_4__2__Impl : ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) ) ;
     public final void rule__ComposedStructureAssembly__Group_4__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8214:1: ( ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8215:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7511:1: ( ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7512:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8215:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8216:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7512:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7513:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 )
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8217:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8217:2: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7514:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7514:2: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2_in_rule__ComposedStructureAssembly__Group_4__2__Impl16292);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2_in_rule__ComposedStructureAssembly__Group_4__2__Impl14924);
             rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2();
 
             state._fsp--;
@@ -21445,21 +19698,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8227:1: rule__ComposedStructureAssembly__Group_4__3 : rule__ComposedStructureAssembly__Group_4__3__Impl rule__ComposedStructureAssembly__Group_4__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7524:1: rule__ComposedStructureAssembly__Group_4__3 : rule__ComposedStructureAssembly__Group_4__3__Impl rule__ComposedStructureAssembly__Group_4__4 ;
     public final void rule__ComposedStructureAssembly__Group_4__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8231:1: ( rule__ComposedStructureAssembly__Group_4__3__Impl rule__ComposedStructureAssembly__Group_4__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8232:2: rule__ComposedStructureAssembly__Group_4__3__Impl rule__ComposedStructureAssembly__Group_4__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7528:1: ( rule__ComposedStructureAssembly__Group_4__3__Impl rule__ComposedStructureAssembly__Group_4__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7529:2: rule__ComposedStructureAssembly__Group_4__3__Impl rule__ComposedStructureAssembly__Group_4__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__3__Impl_in_rule__ComposedStructureAssembly__Group_4__316322);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__3__Impl_in_rule__ComposedStructureAssembly__Group_4__314954);
             rule__ComposedStructureAssembly__Group_4__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__4_in_rule__ComposedStructureAssembly__Group_4__316325);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__4_in_rule__ComposedStructureAssembly__Group_4__314957);
             rule__ComposedStructureAssembly__Group_4__4();
 
             state._fsp--;
@@ -21483,35 +19736,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8239:1: rule__ComposedStructureAssembly__Group_4__3__Impl : ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7536:1: rule__ComposedStructureAssembly__Group_4__3__Impl : ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* ) ;
     public final void rule__ComposedStructureAssembly__Group_4__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8243:1: ( ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8244:1: ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7540:1: ( ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7541:1: ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8244:1: ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8245:1: ( rule__ComposedStructureAssembly__Group_4_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7541:1: ( ( rule__ComposedStructureAssembly__Group_4_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7542:1: ( rule__ComposedStructureAssembly__Group_4_3__0 )*
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_4_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8246:1: ( rule__ComposedStructureAssembly__Group_4_3__0 )*
-            loop57:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7543:1: ( rule__ComposedStructureAssembly__Group_4_3__0 )*
+            loop53:
             do {
-                int alt57=2;
-                int LA57_0 = input.LA(1);
+                int alt53=2;
+                int LA53_0 = input.LA(1);
 
-                if ( (LA57_0==23) ) {
-                    alt57=1;
+                if ( (LA53_0==26) ) {
+                    alt53=1;
                 }
 
 
-                switch (alt57) {
+                switch (alt53) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8246:2: rule__ComposedStructureAssembly__Group_4_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7543:2: rule__ComposedStructureAssembly__Group_4_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0_in_rule__ComposedStructureAssembly__Group_4__3__Impl16352);
+            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0_in_rule__ComposedStructureAssembly__Group_4__3__Impl14984);
             	    rule__ComposedStructureAssembly__Group_4_3__0();
 
             	    state._fsp--;
@@ -21521,7 +19774,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop57;
+            	    break loop53;
                 }
             } while (true);
 
@@ -21548,16 +19801,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8256:1: rule__ComposedStructureAssembly__Group_4__4 : rule__ComposedStructureAssembly__Group_4__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7553:1: rule__ComposedStructureAssembly__Group_4__4 : rule__ComposedStructureAssembly__Group_4__4__Impl ;
     public final void rule__ComposedStructureAssembly__Group_4__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8260:1: ( rule__ComposedStructureAssembly__Group_4__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8261:2: rule__ComposedStructureAssembly__Group_4__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7557:1: ( rule__ComposedStructureAssembly__Group_4__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7558:2: rule__ComposedStructureAssembly__Group_4__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__4__Impl_in_rule__ComposedStructureAssembly__Group_4__416383);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4__4__Impl_in_rule__ComposedStructureAssembly__Group_4__415015);
             rule__ComposedStructureAssembly__Group_4__4__Impl();
 
             state._fsp--;
@@ -21581,20 +19834,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8267:1: rule__ComposedStructureAssembly__Group_4__4__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7564:1: rule__ComposedStructureAssembly__Group_4__4__Impl : ( '}' ) ;
     public final void rule__ComposedStructureAssembly__Group_4__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8271:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8272:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7568:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7569:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8272:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8273:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7569:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7570:1: '}'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_4_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_4__4__Impl16411); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_4__4__Impl15043); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_4_4()); 
 
             }
@@ -21618,21 +19871,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8296:1: rule__ComposedStructureAssembly__Group_4_3__0 : rule__ComposedStructureAssembly__Group_4_3__0__Impl rule__ComposedStructureAssembly__Group_4_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7593:1: rule__ComposedStructureAssembly__Group_4_3__0 : rule__ComposedStructureAssembly__Group_4_3__0__Impl rule__ComposedStructureAssembly__Group_4_3__1 ;
     public final void rule__ComposedStructureAssembly__Group_4_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8300:1: ( rule__ComposedStructureAssembly__Group_4_3__0__Impl rule__ComposedStructureAssembly__Group_4_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8301:2: rule__ComposedStructureAssembly__Group_4_3__0__Impl rule__ComposedStructureAssembly__Group_4_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7597:1: ( rule__ComposedStructureAssembly__Group_4_3__0__Impl rule__ComposedStructureAssembly__Group_4_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7598:2: rule__ComposedStructureAssembly__Group_4_3__0__Impl rule__ComposedStructureAssembly__Group_4_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0__Impl_in_rule__ComposedStructureAssembly__Group_4_3__016452);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0__Impl_in_rule__ComposedStructureAssembly__Group_4_3__015084);
             rule__ComposedStructureAssembly__Group_4_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1_in_rule__ComposedStructureAssembly__Group_4_3__016455);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1_in_rule__ComposedStructureAssembly__Group_4_3__015087);
             rule__ComposedStructureAssembly__Group_4_3__1();
 
             state._fsp--;
@@ -21656,20 +19909,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8308:1: rule__ComposedStructureAssembly__Group_4_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7605:1: rule__ComposedStructureAssembly__Group_4_3__0__Impl : ( ',' ) ;
     public final void rule__ComposedStructureAssembly__Group_4_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8312:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8313:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7609:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7610:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8313:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8314:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7610:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7611:1: ','
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_4_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__ComposedStructureAssembly__Group_4_3__0__Impl16483); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__ComposedStructureAssembly__Group_4_3__0__Impl15115); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_4_3_0()); 
 
             }
@@ -21693,16 +19946,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8327:1: rule__ComposedStructureAssembly__Group_4_3__1 : rule__ComposedStructureAssembly__Group_4_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7624:1: rule__ComposedStructureAssembly__Group_4_3__1 : rule__ComposedStructureAssembly__Group_4_3__1__Impl ;
     public final void rule__ComposedStructureAssembly__Group_4_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8331:1: ( rule__ComposedStructureAssembly__Group_4_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8332:2: rule__ComposedStructureAssembly__Group_4_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7628:1: ( rule__ComposedStructureAssembly__Group_4_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7629:2: rule__ComposedStructureAssembly__Group_4_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1__Impl_in_rule__ComposedStructureAssembly__Group_4_3__116514);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1__Impl_in_rule__ComposedStructureAssembly__Group_4_3__115146);
             rule__ComposedStructureAssembly__Group_4_3__1__Impl();
 
             state._fsp--;
@@ -21726,23 +19979,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_4_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8338:1: rule__ComposedStructureAssembly__Group_4_3__1__Impl : ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7635:1: rule__ComposedStructureAssembly__Group_4_3__1__Impl : ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) ) ;
     public final void rule__ComposedStructureAssembly__Group_4_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8342:1: ( ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8343:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7639:1: ( ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7640:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8343:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8344:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7640:1: ( ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7641:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 )
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssignment_4_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8345:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8345:2: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7642:1: ( rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7642:2: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1_in_rule__ComposedStructureAssembly__Group_4_3__1__Impl16541);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1_in_rule__ComposedStructureAssembly__Group_4_3__1__Impl15173);
             rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1();
 
             state._fsp--;
@@ -21773,21 +20026,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8359:1: rule__ComposedStructureAssembly__Group_5__0 : rule__ComposedStructureAssembly__Group_5__0__Impl rule__ComposedStructureAssembly__Group_5__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7656:1: rule__ComposedStructureAssembly__Group_5__0 : rule__ComposedStructureAssembly__Group_5__0__Impl rule__ComposedStructureAssembly__Group_5__1 ;
     public final void rule__ComposedStructureAssembly__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8363:1: ( rule__ComposedStructureAssembly__Group_5__0__Impl rule__ComposedStructureAssembly__Group_5__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8364:2: rule__ComposedStructureAssembly__Group_5__0__Impl rule__ComposedStructureAssembly__Group_5__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7660:1: ( rule__ComposedStructureAssembly__Group_5__0__Impl rule__ComposedStructureAssembly__Group_5__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7661:2: rule__ComposedStructureAssembly__Group_5__0__Impl rule__ComposedStructureAssembly__Group_5__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__0__Impl_in_rule__ComposedStructureAssembly__Group_5__016575);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__0__Impl_in_rule__ComposedStructureAssembly__Group_5__015207);
             rule__ComposedStructureAssembly__Group_5__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__1_in_rule__ComposedStructureAssembly__Group_5__016578);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__1_in_rule__ComposedStructureAssembly__Group_5__015210);
             rule__ComposedStructureAssembly__Group_5__1();
 
             state._fsp--;
@@ -21811,20 +20064,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8371:1: rule__ComposedStructureAssembly__Group_5__0__Impl : ( 'providedDelegationConnectors' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7668:1: rule__ComposedStructureAssembly__Group_5__0__Impl : ( 'providedDelegationConnectors' ) ;
     public final void rule__ComposedStructureAssembly__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8375:1: ( ( 'providedDelegationConnectors' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8376:1: ( 'providedDelegationConnectors' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7672:1: ( ( 'providedDelegationConnectors' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7673:1: ( 'providedDelegationConnectors' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8376:1: ( 'providedDelegationConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8377:1: 'providedDelegationConnectors'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7673:1: ( 'providedDelegationConnectors' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7674:1: 'providedDelegationConnectors'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsKeyword_5_0()); 
-            match(input,54,FollowSets000.FOLLOW_54_in_rule__ComposedStructureAssembly__Group_5__0__Impl16606); 
+            match(input,51,FollowSets000.FOLLOW_51_in_rule__ComposedStructureAssembly__Group_5__0__Impl15238); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsKeyword_5_0()); 
 
             }
@@ -21848,21 +20101,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8390:1: rule__ComposedStructureAssembly__Group_5__1 : rule__ComposedStructureAssembly__Group_5__1__Impl rule__ComposedStructureAssembly__Group_5__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7687:1: rule__ComposedStructureAssembly__Group_5__1 : rule__ComposedStructureAssembly__Group_5__1__Impl rule__ComposedStructureAssembly__Group_5__2 ;
     public final void rule__ComposedStructureAssembly__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8394:1: ( rule__ComposedStructureAssembly__Group_5__1__Impl rule__ComposedStructureAssembly__Group_5__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8395:2: rule__ComposedStructureAssembly__Group_5__1__Impl rule__ComposedStructureAssembly__Group_5__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7691:1: ( rule__ComposedStructureAssembly__Group_5__1__Impl rule__ComposedStructureAssembly__Group_5__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7692:2: rule__ComposedStructureAssembly__Group_5__1__Impl rule__ComposedStructureAssembly__Group_5__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__1__Impl_in_rule__ComposedStructureAssembly__Group_5__116637);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__1__Impl_in_rule__ComposedStructureAssembly__Group_5__115269);
             rule__ComposedStructureAssembly__Group_5__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__2_in_rule__ComposedStructureAssembly__Group_5__116640);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__2_in_rule__ComposedStructureAssembly__Group_5__115272);
             rule__ComposedStructureAssembly__Group_5__2();
 
             state._fsp--;
@@ -21886,20 +20139,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8402:1: rule__ComposedStructureAssembly__Group_5__1__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7699:1: rule__ComposedStructureAssembly__Group_5__1__Impl : ( '{' ) ;
     public final void rule__ComposedStructureAssembly__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8406:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8407:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7703:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7704:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8407:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8408:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7704:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7705:1: '{'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_5_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_5__1__Impl16668); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_5__1__Impl15300); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_5_1()); 
 
             }
@@ -21923,21 +20176,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8421:1: rule__ComposedStructureAssembly__Group_5__2 : rule__ComposedStructureAssembly__Group_5__2__Impl rule__ComposedStructureAssembly__Group_5__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7718:1: rule__ComposedStructureAssembly__Group_5__2 : rule__ComposedStructureAssembly__Group_5__2__Impl rule__ComposedStructureAssembly__Group_5__3 ;
     public final void rule__ComposedStructureAssembly__Group_5__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8425:1: ( rule__ComposedStructureAssembly__Group_5__2__Impl rule__ComposedStructureAssembly__Group_5__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8426:2: rule__ComposedStructureAssembly__Group_5__2__Impl rule__ComposedStructureAssembly__Group_5__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7722:1: ( rule__ComposedStructureAssembly__Group_5__2__Impl rule__ComposedStructureAssembly__Group_5__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7723:2: rule__ComposedStructureAssembly__Group_5__2__Impl rule__ComposedStructureAssembly__Group_5__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__2__Impl_in_rule__ComposedStructureAssembly__Group_5__216699);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__2__Impl_in_rule__ComposedStructureAssembly__Group_5__215331);
             rule__ComposedStructureAssembly__Group_5__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__3_in_rule__ComposedStructureAssembly__Group_5__216702);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__3_in_rule__ComposedStructureAssembly__Group_5__215334);
             rule__ComposedStructureAssembly__Group_5__3();
 
             state._fsp--;
@@ -21961,23 +20214,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8433:1: rule__ComposedStructureAssembly__Group_5__2__Impl : ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7730:1: rule__ComposedStructureAssembly__Group_5__2__Impl : ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) ) ;
     public final void rule__ComposedStructureAssembly__Group_5__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8437:1: ( ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8438:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7734:1: ( ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7735:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8438:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8439:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7735:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7736:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 )
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8440:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8440:2: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7737:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7737:2: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2_in_rule__ComposedStructureAssembly__Group_5__2__Impl16729);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2_in_rule__ComposedStructureAssembly__Group_5__2__Impl15361);
             rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2();
 
             state._fsp--;
@@ -22008,21 +20261,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8450:1: rule__ComposedStructureAssembly__Group_5__3 : rule__ComposedStructureAssembly__Group_5__3__Impl rule__ComposedStructureAssembly__Group_5__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7747:1: rule__ComposedStructureAssembly__Group_5__3 : rule__ComposedStructureAssembly__Group_5__3__Impl rule__ComposedStructureAssembly__Group_5__4 ;
     public final void rule__ComposedStructureAssembly__Group_5__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8454:1: ( rule__ComposedStructureAssembly__Group_5__3__Impl rule__ComposedStructureAssembly__Group_5__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8455:2: rule__ComposedStructureAssembly__Group_5__3__Impl rule__ComposedStructureAssembly__Group_5__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7751:1: ( rule__ComposedStructureAssembly__Group_5__3__Impl rule__ComposedStructureAssembly__Group_5__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7752:2: rule__ComposedStructureAssembly__Group_5__3__Impl rule__ComposedStructureAssembly__Group_5__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__3__Impl_in_rule__ComposedStructureAssembly__Group_5__316759);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__3__Impl_in_rule__ComposedStructureAssembly__Group_5__315391);
             rule__ComposedStructureAssembly__Group_5__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__4_in_rule__ComposedStructureAssembly__Group_5__316762);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__4_in_rule__ComposedStructureAssembly__Group_5__315394);
             rule__ComposedStructureAssembly__Group_5__4();
 
             state._fsp--;
@@ -22046,35 +20299,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8462:1: rule__ComposedStructureAssembly__Group_5__3__Impl : ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7759:1: rule__ComposedStructureAssembly__Group_5__3__Impl : ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* ) ;
     public final void rule__ComposedStructureAssembly__Group_5__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8466:1: ( ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8467:1: ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7763:1: ( ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7764:1: ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8467:1: ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8468:1: ( rule__ComposedStructureAssembly__Group_5_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7764:1: ( ( rule__ComposedStructureAssembly__Group_5_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7765:1: ( rule__ComposedStructureAssembly__Group_5_3__0 )*
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_5_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8469:1: ( rule__ComposedStructureAssembly__Group_5_3__0 )*
-            loop58:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7766:1: ( rule__ComposedStructureAssembly__Group_5_3__0 )*
+            loop54:
             do {
-                int alt58=2;
-                int LA58_0 = input.LA(1);
+                int alt54=2;
+                int LA54_0 = input.LA(1);
 
-                if ( (LA58_0==23) ) {
-                    alt58=1;
+                if ( (LA54_0==26) ) {
+                    alt54=1;
                 }
 
 
-                switch (alt58) {
+                switch (alt54) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8469:2: rule__ComposedStructureAssembly__Group_5_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7766:2: rule__ComposedStructureAssembly__Group_5_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0_in_rule__ComposedStructureAssembly__Group_5__3__Impl16789);
+            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0_in_rule__ComposedStructureAssembly__Group_5__3__Impl15421);
             	    rule__ComposedStructureAssembly__Group_5_3__0();
 
             	    state._fsp--;
@@ -22084,7 +20337,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop58;
+            	    break loop54;
                 }
             } while (true);
 
@@ -22111,16 +20364,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8479:1: rule__ComposedStructureAssembly__Group_5__4 : rule__ComposedStructureAssembly__Group_5__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7776:1: rule__ComposedStructureAssembly__Group_5__4 : rule__ComposedStructureAssembly__Group_5__4__Impl ;
     public final void rule__ComposedStructureAssembly__Group_5__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8483:1: ( rule__ComposedStructureAssembly__Group_5__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8484:2: rule__ComposedStructureAssembly__Group_5__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7780:1: ( rule__ComposedStructureAssembly__Group_5__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7781:2: rule__ComposedStructureAssembly__Group_5__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__4__Impl_in_rule__ComposedStructureAssembly__Group_5__416820);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5__4__Impl_in_rule__ComposedStructureAssembly__Group_5__415452);
             rule__ComposedStructureAssembly__Group_5__4__Impl();
 
             state._fsp--;
@@ -22144,20 +20397,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8490:1: rule__ComposedStructureAssembly__Group_5__4__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7787:1: rule__ComposedStructureAssembly__Group_5__4__Impl : ( '}' ) ;
     public final void rule__ComposedStructureAssembly__Group_5__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8494:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8495:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7791:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7792:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8495:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8496:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7792:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7793:1: '}'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_5_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_5__4__Impl16848); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_5__4__Impl15480); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_5_4()); 
 
             }
@@ -22181,21 +20434,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8519:1: rule__ComposedStructureAssembly__Group_5_3__0 : rule__ComposedStructureAssembly__Group_5_3__0__Impl rule__ComposedStructureAssembly__Group_5_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7816:1: rule__ComposedStructureAssembly__Group_5_3__0 : rule__ComposedStructureAssembly__Group_5_3__0__Impl rule__ComposedStructureAssembly__Group_5_3__1 ;
     public final void rule__ComposedStructureAssembly__Group_5_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8523:1: ( rule__ComposedStructureAssembly__Group_5_3__0__Impl rule__ComposedStructureAssembly__Group_5_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8524:2: rule__ComposedStructureAssembly__Group_5_3__0__Impl rule__ComposedStructureAssembly__Group_5_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7820:1: ( rule__ComposedStructureAssembly__Group_5_3__0__Impl rule__ComposedStructureAssembly__Group_5_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7821:2: rule__ComposedStructureAssembly__Group_5_3__0__Impl rule__ComposedStructureAssembly__Group_5_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0__Impl_in_rule__ComposedStructureAssembly__Group_5_3__016889);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0__Impl_in_rule__ComposedStructureAssembly__Group_5_3__015521);
             rule__ComposedStructureAssembly__Group_5_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1_in_rule__ComposedStructureAssembly__Group_5_3__016892);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1_in_rule__ComposedStructureAssembly__Group_5_3__015524);
             rule__ComposedStructureAssembly__Group_5_3__1();
 
             state._fsp--;
@@ -22219,20 +20472,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8531:1: rule__ComposedStructureAssembly__Group_5_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7828:1: rule__ComposedStructureAssembly__Group_5_3__0__Impl : ( ',' ) ;
     public final void rule__ComposedStructureAssembly__Group_5_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8535:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8536:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7832:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7833:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8536:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8537:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7833:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7834:1: ','
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_5_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__ComposedStructureAssembly__Group_5_3__0__Impl16920); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__ComposedStructureAssembly__Group_5_3__0__Impl15552); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_5_3_0()); 
 
             }
@@ -22256,16 +20509,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8550:1: rule__ComposedStructureAssembly__Group_5_3__1 : rule__ComposedStructureAssembly__Group_5_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7847:1: rule__ComposedStructureAssembly__Group_5_3__1 : rule__ComposedStructureAssembly__Group_5_3__1__Impl ;
     public final void rule__ComposedStructureAssembly__Group_5_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8554:1: ( rule__ComposedStructureAssembly__Group_5_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8555:2: rule__ComposedStructureAssembly__Group_5_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7851:1: ( rule__ComposedStructureAssembly__Group_5_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7852:2: rule__ComposedStructureAssembly__Group_5_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1__Impl_in_rule__ComposedStructureAssembly__Group_5_3__116951);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1__Impl_in_rule__ComposedStructureAssembly__Group_5_3__115583);
             rule__ComposedStructureAssembly__Group_5_3__1__Impl();
 
             state._fsp--;
@@ -22289,23 +20542,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_5_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8561:1: rule__ComposedStructureAssembly__Group_5_3__1__Impl : ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7858:1: rule__ComposedStructureAssembly__Group_5_3__1__Impl : ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) ) ;
     public final void rule__ComposedStructureAssembly__Group_5_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8565:1: ( ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8566:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7862:1: ( ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7863:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8566:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8567:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7863:1: ( ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7864:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 )
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsAssignment_5_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8568:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8568:2: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7865:1: ( rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7865:2: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1_in_rule__ComposedStructureAssembly__Group_5_3__1__Impl16978);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1_in_rule__ComposedStructureAssembly__Group_5_3__1__Impl15610);
             rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1();
 
             state._fsp--;
@@ -22336,21 +20589,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8582:1: rule__ComposedStructureAssembly__Group_6__0 : rule__ComposedStructureAssembly__Group_6__0__Impl rule__ComposedStructureAssembly__Group_6__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7879:1: rule__ComposedStructureAssembly__Group_6__0 : rule__ComposedStructureAssembly__Group_6__0__Impl rule__ComposedStructureAssembly__Group_6__1 ;
     public final void rule__ComposedStructureAssembly__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8586:1: ( rule__ComposedStructureAssembly__Group_6__0__Impl rule__ComposedStructureAssembly__Group_6__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8587:2: rule__ComposedStructureAssembly__Group_6__0__Impl rule__ComposedStructureAssembly__Group_6__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7883:1: ( rule__ComposedStructureAssembly__Group_6__0__Impl rule__ComposedStructureAssembly__Group_6__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7884:2: rule__ComposedStructureAssembly__Group_6__0__Impl rule__ComposedStructureAssembly__Group_6__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__0__Impl_in_rule__ComposedStructureAssembly__Group_6__017012);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__0__Impl_in_rule__ComposedStructureAssembly__Group_6__015644);
             rule__ComposedStructureAssembly__Group_6__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__1_in_rule__ComposedStructureAssembly__Group_6__017015);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__1_in_rule__ComposedStructureAssembly__Group_6__015647);
             rule__ComposedStructureAssembly__Group_6__1();
 
             state._fsp--;
@@ -22374,20 +20627,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8594:1: rule__ComposedStructureAssembly__Group_6__0__Impl : ( 'requiredDelegationConnectors' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7891:1: rule__ComposedStructureAssembly__Group_6__0__Impl : ( 'requiredDelegationConnectors' ) ;
     public final void rule__ComposedStructureAssembly__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8598:1: ( ( 'requiredDelegationConnectors' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8599:1: ( 'requiredDelegationConnectors' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7895:1: ( ( 'requiredDelegationConnectors' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7896:1: ( 'requiredDelegationConnectors' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8599:1: ( 'requiredDelegationConnectors' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8600:1: 'requiredDelegationConnectors'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7896:1: ( 'requiredDelegationConnectors' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7897:1: 'requiredDelegationConnectors'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsKeyword_6_0()); 
-            match(input,55,FollowSets000.FOLLOW_55_in_rule__ComposedStructureAssembly__Group_6__0__Impl17043); 
+            match(input,52,FollowSets000.FOLLOW_52_in_rule__ComposedStructureAssembly__Group_6__0__Impl15675); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsKeyword_6_0()); 
 
             }
@@ -22411,21 +20664,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8613:1: rule__ComposedStructureAssembly__Group_6__1 : rule__ComposedStructureAssembly__Group_6__1__Impl rule__ComposedStructureAssembly__Group_6__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7910:1: rule__ComposedStructureAssembly__Group_6__1 : rule__ComposedStructureAssembly__Group_6__1__Impl rule__ComposedStructureAssembly__Group_6__2 ;
     public final void rule__ComposedStructureAssembly__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8617:1: ( rule__ComposedStructureAssembly__Group_6__1__Impl rule__ComposedStructureAssembly__Group_6__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8618:2: rule__ComposedStructureAssembly__Group_6__1__Impl rule__ComposedStructureAssembly__Group_6__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7914:1: ( rule__ComposedStructureAssembly__Group_6__1__Impl rule__ComposedStructureAssembly__Group_6__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7915:2: rule__ComposedStructureAssembly__Group_6__1__Impl rule__ComposedStructureAssembly__Group_6__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__1__Impl_in_rule__ComposedStructureAssembly__Group_6__117074);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__1__Impl_in_rule__ComposedStructureAssembly__Group_6__115706);
             rule__ComposedStructureAssembly__Group_6__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__2_in_rule__ComposedStructureAssembly__Group_6__117077);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__2_in_rule__ComposedStructureAssembly__Group_6__115709);
             rule__ComposedStructureAssembly__Group_6__2();
 
             state._fsp--;
@@ -22449,20 +20702,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8625:1: rule__ComposedStructureAssembly__Group_6__1__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7922:1: rule__ComposedStructureAssembly__Group_6__1__Impl : ( '{' ) ;
     public final void rule__ComposedStructureAssembly__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8629:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8630:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7926:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7927:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8630:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8631:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7927:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7928:1: '{'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_6_1()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_6__1__Impl17105); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__ComposedStructureAssembly__Group_6__1__Impl15737); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_6_1()); 
 
             }
@@ -22486,21 +20739,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8644:1: rule__ComposedStructureAssembly__Group_6__2 : rule__ComposedStructureAssembly__Group_6__2__Impl rule__ComposedStructureAssembly__Group_6__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7941:1: rule__ComposedStructureAssembly__Group_6__2 : rule__ComposedStructureAssembly__Group_6__2__Impl rule__ComposedStructureAssembly__Group_6__3 ;
     public final void rule__ComposedStructureAssembly__Group_6__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8648:1: ( rule__ComposedStructureAssembly__Group_6__2__Impl rule__ComposedStructureAssembly__Group_6__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8649:2: rule__ComposedStructureAssembly__Group_6__2__Impl rule__ComposedStructureAssembly__Group_6__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7945:1: ( rule__ComposedStructureAssembly__Group_6__2__Impl rule__ComposedStructureAssembly__Group_6__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7946:2: rule__ComposedStructureAssembly__Group_6__2__Impl rule__ComposedStructureAssembly__Group_6__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__2__Impl_in_rule__ComposedStructureAssembly__Group_6__217136);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__2__Impl_in_rule__ComposedStructureAssembly__Group_6__215768);
             rule__ComposedStructureAssembly__Group_6__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__3_in_rule__ComposedStructureAssembly__Group_6__217139);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__3_in_rule__ComposedStructureAssembly__Group_6__215771);
             rule__ComposedStructureAssembly__Group_6__3();
 
             state._fsp--;
@@ -22524,23 +20777,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8656:1: rule__ComposedStructureAssembly__Group_6__2__Impl : ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7953:1: rule__ComposedStructureAssembly__Group_6__2__Impl : ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) ) ;
     public final void rule__ComposedStructureAssembly__Group_6__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8660:1: ( ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8661:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7957:1: ( ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7958:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8661:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8662:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7958:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7959:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 )
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_2()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8663:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8663:2: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7960:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7960:2: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2_in_rule__ComposedStructureAssembly__Group_6__2__Impl17166);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2_in_rule__ComposedStructureAssembly__Group_6__2__Impl15798);
             rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2();
 
             state._fsp--;
@@ -22571,21 +20824,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8673:1: rule__ComposedStructureAssembly__Group_6__3 : rule__ComposedStructureAssembly__Group_6__3__Impl rule__ComposedStructureAssembly__Group_6__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7970:1: rule__ComposedStructureAssembly__Group_6__3 : rule__ComposedStructureAssembly__Group_6__3__Impl rule__ComposedStructureAssembly__Group_6__4 ;
     public final void rule__ComposedStructureAssembly__Group_6__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8677:1: ( rule__ComposedStructureAssembly__Group_6__3__Impl rule__ComposedStructureAssembly__Group_6__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8678:2: rule__ComposedStructureAssembly__Group_6__3__Impl rule__ComposedStructureAssembly__Group_6__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7974:1: ( rule__ComposedStructureAssembly__Group_6__3__Impl rule__ComposedStructureAssembly__Group_6__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7975:2: rule__ComposedStructureAssembly__Group_6__3__Impl rule__ComposedStructureAssembly__Group_6__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__3__Impl_in_rule__ComposedStructureAssembly__Group_6__317196);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__3__Impl_in_rule__ComposedStructureAssembly__Group_6__315828);
             rule__ComposedStructureAssembly__Group_6__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__4_in_rule__ComposedStructureAssembly__Group_6__317199);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__4_in_rule__ComposedStructureAssembly__Group_6__315831);
             rule__ComposedStructureAssembly__Group_6__4();
 
             state._fsp--;
@@ -22609,35 +20862,35 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8685:1: rule__ComposedStructureAssembly__Group_6__3__Impl : ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7982:1: rule__ComposedStructureAssembly__Group_6__3__Impl : ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* ) ;
     public final void rule__ComposedStructureAssembly__Group_6__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8689:1: ( ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8690:1: ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7986:1: ( ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7987:1: ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8690:1: ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8691:1: ( rule__ComposedStructureAssembly__Group_6_3__0 )*
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7987:1: ( ( rule__ComposedStructureAssembly__Group_6_3__0 )* )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7988:1: ( rule__ComposedStructureAssembly__Group_6_3__0 )*
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getGroup_6_3()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8692:1: ( rule__ComposedStructureAssembly__Group_6_3__0 )*
-            loop59:
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7989:1: ( rule__ComposedStructureAssembly__Group_6_3__0 )*
+            loop55:
             do {
-                int alt59=2;
-                int LA59_0 = input.LA(1);
+                int alt55=2;
+                int LA55_0 = input.LA(1);
 
-                if ( (LA59_0==23) ) {
-                    alt59=1;
+                if ( (LA55_0==26) ) {
+                    alt55=1;
                 }
 
 
-                switch (alt59) {
+                switch (alt55) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8692:2: rule__ComposedStructureAssembly__Group_6_3__0
+            	    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7989:2: rule__ComposedStructureAssembly__Group_6_3__0
             	    {
-            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0_in_rule__ComposedStructureAssembly__Group_6__3__Impl17226);
+            	    pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0_in_rule__ComposedStructureAssembly__Group_6__3__Impl15858);
             	    rule__ComposedStructureAssembly__Group_6_3__0();
 
             	    state._fsp--;
@@ -22647,7 +20900,7 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
             	    break;
 
             	default :
-            	    break loop59;
+            	    break loop55;
                 }
             } while (true);
 
@@ -22674,16 +20927,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8702:1: rule__ComposedStructureAssembly__Group_6__4 : rule__ComposedStructureAssembly__Group_6__4__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:7999:1: rule__ComposedStructureAssembly__Group_6__4 : rule__ComposedStructureAssembly__Group_6__4__Impl ;
     public final void rule__ComposedStructureAssembly__Group_6__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8706:1: ( rule__ComposedStructureAssembly__Group_6__4__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8707:2: rule__ComposedStructureAssembly__Group_6__4__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8003:1: ( rule__ComposedStructureAssembly__Group_6__4__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8004:2: rule__ComposedStructureAssembly__Group_6__4__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__4__Impl_in_rule__ComposedStructureAssembly__Group_6__417257);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6__4__Impl_in_rule__ComposedStructureAssembly__Group_6__415889);
             rule__ComposedStructureAssembly__Group_6__4__Impl();
 
             state._fsp--;
@@ -22707,20 +20960,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8713:1: rule__ComposedStructureAssembly__Group_6__4__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8010:1: rule__ComposedStructureAssembly__Group_6__4__Impl : ( '}' ) ;
     public final void rule__ComposedStructureAssembly__Group_6__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8717:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8718:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8014:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8015:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8718:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8719:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8015:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8016:1: '}'
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_6_4()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_6__4__Impl17285); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__ComposedStructureAssembly__Group_6__4__Impl15917); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_6_4()); 
 
             }
@@ -22744,21 +20997,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6_3__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8742:1: rule__ComposedStructureAssembly__Group_6_3__0 : rule__ComposedStructureAssembly__Group_6_3__0__Impl rule__ComposedStructureAssembly__Group_6_3__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8039:1: rule__ComposedStructureAssembly__Group_6_3__0 : rule__ComposedStructureAssembly__Group_6_3__0__Impl rule__ComposedStructureAssembly__Group_6_3__1 ;
     public final void rule__ComposedStructureAssembly__Group_6_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8746:1: ( rule__ComposedStructureAssembly__Group_6_3__0__Impl rule__ComposedStructureAssembly__Group_6_3__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8747:2: rule__ComposedStructureAssembly__Group_6_3__0__Impl rule__ComposedStructureAssembly__Group_6_3__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8043:1: ( rule__ComposedStructureAssembly__Group_6_3__0__Impl rule__ComposedStructureAssembly__Group_6_3__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8044:2: rule__ComposedStructureAssembly__Group_6_3__0__Impl rule__ComposedStructureAssembly__Group_6_3__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0__Impl_in_rule__ComposedStructureAssembly__Group_6_3__017326);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0__Impl_in_rule__ComposedStructureAssembly__Group_6_3__015958);
             rule__ComposedStructureAssembly__Group_6_3__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1_in_rule__ComposedStructureAssembly__Group_6_3__017329);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1_in_rule__ComposedStructureAssembly__Group_6_3__015961);
             rule__ComposedStructureAssembly__Group_6_3__1();
 
             state._fsp--;
@@ -22782,20 +21035,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6_3__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8754:1: rule__ComposedStructureAssembly__Group_6_3__0__Impl : ( ',' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8051:1: rule__ComposedStructureAssembly__Group_6_3__0__Impl : ( ',' ) ;
     public final void rule__ComposedStructureAssembly__Group_6_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8758:1: ( ( ',' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8759:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8055:1: ( ( ',' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8056:1: ( ',' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8759:1: ( ',' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8760:1: ','
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8056:1: ( ',' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8057:1: ','
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_6_3_0()); 
-            match(input,23,FollowSets000.FOLLOW_23_in_rule__ComposedStructureAssembly__Group_6_3__0__Impl17357); 
+            match(input,26,FollowSets000.FOLLOW_26_in_rule__ComposedStructureAssembly__Group_6_3__0__Impl15989); 
              after(grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_6_3_0()); 
 
             }
@@ -22819,16 +21072,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6_3__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8773:1: rule__ComposedStructureAssembly__Group_6_3__1 : rule__ComposedStructureAssembly__Group_6_3__1__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8070:1: rule__ComposedStructureAssembly__Group_6_3__1 : rule__ComposedStructureAssembly__Group_6_3__1__Impl ;
     public final void rule__ComposedStructureAssembly__Group_6_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8777:1: ( rule__ComposedStructureAssembly__Group_6_3__1__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8778:2: rule__ComposedStructureAssembly__Group_6_3__1__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8074:1: ( rule__ComposedStructureAssembly__Group_6_3__1__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8075:2: rule__ComposedStructureAssembly__Group_6_3__1__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1__Impl_in_rule__ComposedStructureAssembly__Group_6_3__117388);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1__Impl_in_rule__ComposedStructureAssembly__Group_6_3__116020);
             rule__ComposedStructureAssembly__Group_6_3__1__Impl();
 
             state._fsp--;
@@ -22852,23 +21105,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__Group_6_3__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8784:1: rule__ComposedStructureAssembly__Group_6_3__1__Impl : ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8081:1: rule__ComposedStructureAssembly__Group_6_3__1__Impl : ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) ) ;
     public final void rule__ComposedStructureAssembly__Group_6_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8788:1: ( ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8789:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8085:1: ( ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8086:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8789:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8790:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8086:1: ( ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8087:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 )
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsAssignment_6_3_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8791:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8791:2: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8088:1: ( rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8088:2: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1_in_rule__ComposedStructureAssembly__Group_6_3__1__Impl17415);
+            pushFollow(FollowSets000.FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1_in_rule__ComposedStructureAssembly__Group_6_3__1__Impl16047);
             rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1();
 
             state._fsp--;
@@ -22899,21 +21152,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8805:1: rule__AssemblyContext__Group__0 : rule__AssemblyContext__Group__0__Impl rule__AssemblyContext__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8102:1: rule__AssemblyContext__Group__0 : rule__AssemblyContext__Group__0__Impl rule__AssemblyContext__Group__1 ;
     public final void rule__AssemblyContext__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8809:1: ( rule__AssemblyContext__Group__0__Impl rule__AssemblyContext__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8810:2: rule__AssemblyContext__Group__0__Impl rule__AssemblyContext__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8106:1: ( rule__AssemblyContext__Group__0__Impl rule__AssemblyContext__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8107:2: rule__AssemblyContext__Group__0__Impl rule__AssemblyContext__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__0__Impl_in_rule__AssemblyContext__Group__017449);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__0__Impl_in_rule__AssemblyContext__Group__016081);
             rule__AssemblyContext__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__1_in_rule__AssemblyContext__Group__017452);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__1_in_rule__AssemblyContext__Group__016084);
             rule__AssemblyContext__Group__1();
 
             state._fsp--;
@@ -22937,20 +21190,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8817:1: rule__AssemblyContext__Group__0__Impl : ( 'AssemblyContext' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8114:1: rule__AssemblyContext__Group__0__Impl : ( 'AssemblyContext' ) ;
     public final void rule__AssemblyContext__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8821:1: ( ( 'AssemblyContext' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8822:1: ( 'AssemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8118:1: ( ( 'AssemblyContext' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8119:1: ( 'AssemblyContext' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8822:1: ( 'AssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8823:1: 'AssemblyContext'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8119:1: ( 'AssemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8120:1: 'AssemblyContext'
             {
              before(grammarAccess.getAssemblyContextAccess().getAssemblyContextKeyword_0()); 
-            match(input,56,FollowSets000.FOLLOW_56_in_rule__AssemblyContext__Group__0__Impl17480); 
+            match(input,53,FollowSets000.FOLLOW_53_in_rule__AssemblyContext__Group__0__Impl16112); 
              after(grammarAccess.getAssemblyContextAccess().getAssemblyContextKeyword_0()); 
 
             }
@@ -22974,21 +21227,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8836:1: rule__AssemblyContext__Group__1 : rule__AssemblyContext__Group__1__Impl rule__AssemblyContext__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8133:1: rule__AssemblyContext__Group__1 : rule__AssemblyContext__Group__1__Impl rule__AssemblyContext__Group__2 ;
     public final void rule__AssemblyContext__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8840:1: ( rule__AssemblyContext__Group__1__Impl rule__AssemblyContext__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8841:2: rule__AssemblyContext__Group__1__Impl rule__AssemblyContext__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8137:1: ( rule__AssemblyContext__Group__1__Impl rule__AssemblyContext__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8138:2: rule__AssemblyContext__Group__1__Impl rule__AssemblyContext__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__1__Impl_in_rule__AssemblyContext__Group__117511);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__1__Impl_in_rule__AssemblyContext__Group__116143);
             rule__AssemblyContext__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__2_in_rule__AssemblyContext__Group__117514);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__2_in_rule__AssemblyContext__Group__116146);
             rule__AssemblyContext__Group__2();
 
             state._fsp--;
@@ -23012,23 +21265,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8848:1: rule__AssemblyContext__Group__1__Impl : ( ( rule__AssemblyContext__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8145:1: rule__AssemblyContext__Group__1__Impl : ( ( rule__AssemblyContext__NameAssignment_1 ) ) ;
     public final void rule__AssemblyContext__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8852:1: ( ( ( rule__AssemblyContext__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8853:1: ( ( rule__AssemblyContext__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8149:1: ( ( ( rule__AssemblyContext__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8150:1: ( ( rule__AssemblyContext__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8853:1: ( ( rule__AssemblyContext__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8854:1: ( rule__AssemblyContext__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8150:1: ( ( rule__AssemblyContext__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8151:1: ( rule__AssemblyContext__NameAssignment_1 )
             {
              before(grammarAccess.getAssemblyContextAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8855:1: ( rule__AssemblyContext__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8855:2: rule__AssemblyContext__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8152:1: ( rule__AssemblyContext__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8152:2: rule__AssemblyContext__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__NameAssignment_1_in_rule__AssemblyContext__Group__1__Impl17541);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__NameAssignment_1_in_rule__AssemblyContext__Group__1__Impl16173);
             rule__AssemblyContext__NameAssignment_1();
 
             state._fsp--;
@@ -23059,21 +21312,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8865:1: rule__AssemblyContext__Group__2 : rule__AssemblyContext__Group__2__Impl rule__AssemblyContext__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8162:1: rule__AssemblyContext__Group__2 : rule__AssemblyContext__Group__2__Impl rule__AssemblyContext__Group__3 ;
     public final void rule__AssemblyContext__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8869:1: ( rule__AssemblyContext__Group__2__Impl rule__AssemblyContext__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8870:2: rule__AssemblyContext__Group__2__Impl rule__AssemblyContext__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8166:1: ( rule__AssemblyContext__Group__2__Impl rule__AssemblyContext__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8167:2: rule__AssemblyContext__Group__2__Impl rule__AssemblyContext__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__2__Impl_in_rule__AssemblyContext__Group__217571);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__2__Impl_in_rule__AssemblyContext__Group__216203);
             rule__AssemblyContext__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__3_in_rule__AssemblyContext__Group__217574);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__3_in_rule__AssemblyContext__Group__216206);
             rule__AssemblyContext__Group__3();
 
             state._fsp--;
@@ -23097,20 +21350,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8877:1: rule__AssemblyContext__Group__2__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8174:1: rule__AssemblyContext__Group__2__Impl : ( '{' ) ;
     public final void rule__AssemblyContext__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8881:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8882:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8178:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8179:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8882:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8883:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8179:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8180:1: '{'
             {
              before(grammarAccess.getAssemblyContextAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__AssemblyContext__Group__2__Impl17602); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__AssemblyContext__Group__2__Impl16234); 
              after(grammarAccess.getAssemblyContextAccess().getLeftCurlyBracketKeyword_2()); 
 
             }
@@ -23134,21 +21387,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8896:1: rule__AssemblyContext__Group__3 : rule__AssemblyContext__Group__3__Impl rule__AssemblyContext__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8193:1: rule__AssemblyContext__Group__3 : rule__AssemblyContext__Group__3__Impl rule__AssemblyContext__Group__4 ;
     public final void rule__AssemblyContext__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8900:1: ( rule__AssemblyContext__Group__3__Impl rule__AssemblyContext__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8901:2: rule__AssemblyContext__Group__3__Impl rule__AssemblyContext__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8197:1: ( rule__AssemblyContext__Group__3__Impl rule__AssemblyContext__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8198:2: rule__AssemblyContext__Group__3__Impl rule__AssemblyContext__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__3__Impl_in_rule__AssemblyContext__Group__317633);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__3__Impl_in_rule__AssemblyContext__Group__316265);
             rule__AssemblyContext__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__4_in_rule__AssemblyContext__Group__317636);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__4_in_rule__AssemblyContext__Group__316268);
             rule__AssemblyContext__Group__4();
 
             state._fsp--;
@@ -23172,20 +21425,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8908:1: rule__AssemblyContext__Group__3__Impl : ( 'encapsulatedComponent' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8205:1: rule__AssemblyContext__Group__3__Impl : ( 'encapsulatedComponent' ) ;
     public final void rule__AssemblyContext__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8912:1: ( ( 'encapsulatedComponent' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8913:1: ( 'encapsulatedComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8209:1: ( ( 'encapsulatedComponent' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8210:1: ( 'encapsulatedComponent' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8913:1: ( 'encapsulatedComponent' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8914:1: 'encapsulatedComponent'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8210:1: ( 'encapsulatedComponent' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8211:1: 'encapsulatedComponent'
             {
              before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentKeyword_3()); 
-            match(input,57,FollowSets000.FOLLOW_57_in_rule__AssemblyContext__Group__3__Impl17664); 
+            match(input,54,FollowSets000.FOLLOW_54_in_rule__AssemblyContext__Group__3__Impl16296); 
              after(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentKeyword_3()); 
 
             }
@@ -23209,21 +21462,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8927:1: rule__AssemblyContext__Group__4 : rule__AssemblyContext__Group__4__Impl rule__AssemblyContext__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8224:1: rule__AssemblyContext__Group__4 : rule__AssemblyContext__Group__4__Impl rule__AssemblyContext__Group__5 ;
     public final void rule__AssemblyContext__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8931:1: ( rule__AssemblyContext__Group__4__Impl rule__AssemblyContext__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8932:2: rule__AssemblyContext__Group__4__Impl rule__AssemblyContext__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8228:1: ( rule__AssemblyContext__Group__4__Impl rule__AssemblyContext__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8229:2: rule__AssemblyContext__Group__4__Impl rule__AssemblyContext__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__4__Impl_in_rule__AssemblyContext__Group__417695);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__4__Impl_in_rule__AssemblyContext__Group__416327);
             rule__AssemblyContext__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__5_in_rule__AssemblyContext__Group__417698);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__5_in_rule__AssemblyContext__Group__416330);
             rule__AssemblyContext__Group__5();
 
             state._fsp--;
@@ -23247,23 +21500,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8939:1: rule__AssemblyContext__Group__4__Impl : ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8236:1: rule__AssemblyContext__Group__4__Impl : ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) ) ;
     public final void rule__AssemblyContext__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8943:1: ( ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8944:1: ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8240:1: ( ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8241:1: ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8944:1: ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8945:1: ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8241:1: ( ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8242:1: ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 )
             {
              before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8946:1: ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8946:2: rule__AssemblyContext__EncapsulatedComponentAssignment_4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8243:1: ( rule__AssemblyContext__EncapsulatedComponentAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8243:2: rule__AssemblyContext__EncapsulatedComponentAssignment_4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__EncapsulatedComponentAssignment_4_in_rule__AssemblyContext__Group__4__Impl17725);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__EncapsulatedComponentAssignment_4_in_rule__AssemblyContext__Group__4__Impl16357);
             rule__AssemblyContext__EncapsulatedComponentAssignment_4();
 
             state._fsp--;
@@ -23294,16 +21547,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8956:1: rule__AssemblyContext__Group__5 : rule__AssemblyContext__Group__5__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8253:1: rule__AssemblyContext__Group__5 : rule__AssemblyContext__Group__5__Impl ;
     public final void rule__AssemblyContext__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8960:1: ( rule__AssemblyContext__Group__5__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8961:2: rule__AssemblyContext__Group__5__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8257:1: ( rule__AssemblyContext__Group__5__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8258:2: rule__AssemblyContext__Group__5__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__5__Impl_in_rule__AssemblyContext__Group__517755);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyContext__Group__5__Impl_in_rule__AssemblyContext__Group__516387);
             rule__AssemblyContext__Group__5__Impl();
 
             state._fsp--;
@@ -23327,20 +21580,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8967:1: rule__AssemblyContext__Group__5__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8264:1: rule__AssemblyContext__Group__5__Impl : ( '}' ) ;
     public final void rule__AssemblyContext__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8971:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8972:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8268:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8269:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8972:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8973:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8269:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8270:1: '}'
             {
              before(grammarAccess.getAssemblyContextAccess().getRightCurlyBracketKeyword_5()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__AssemblyContext__Group__5__Impl17783); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__AssemblyContext__Group__5__Impl16415); 
              after(grammarAccess.getAssemblyContextAccess().getRightCurlyBracketKeyword_5()); 
 
             }
@@ -23364,21 +21617,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8998:1: rule__AssemblyConnector__Group__0 : rule__AssemblyConnector__Group__0__Impl rule__AssemblyConnector__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8295:1: rule__AssemblyConnector__Group__0 : rule__AssemblyConnector__Group__0__Impl rule__AssemblyConnector__Group__1 ;
     public final void rule__AssemblyConnector__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9002:1: ( rule__AssemblyConnector__Group__0__Impl rule__AssemblyConnector__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9003:2: rule__AssemblyConnector__Group__0__Impl rule__AssemblyConnector__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8299:1: ( rule__AssemblyConnector__Group__0__Impl rule__AssemblyConnector__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8300:2: rule__AssemblyConnector__Group__0__Impl rule__AssemblyConnector__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__0__Impl_in_rule__AssemblyConnector__Group__017826);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__0__Impl_in_rule__AssemblyConnector__Group__016458);
             rule__AssemblyConnector__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__1_in_rule__AssemblyConnector__Group__017829);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__1_in_rule__AssemblyConnector__Group__016461);
             rule__AssemblyConnector__Group__1();
 
             state._fsp--;
@@ -23402,20 +21655,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9010:1: rule__AssemblyConnector__Group__0__Impl : ( 'AssemblyConnector' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8307:1: rule__AssemblyConnector__Group__0__Impl : ( 'AssemblyConnector' ) ;
     public final void rule__AssemblyConnector__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9014:1: ( ( 'AssemblyConnector' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9015:1: ( 'AssemblyConnector' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8311:1: ( ( 'AssemblyConnector' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8312:1: ( 'AssemblyConnector' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9015:1: ( 'AssemblyConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9016:1: 'AssemblyConnector'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8312:1: ( 'AssemblyConnector' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8313:1: 'AssemblyConnector'
             {
              before(grammarAccess.getAssemblyConnectorAccess().getAssemblyConnectorKeyword_0()); 
-            match(input,58,FollowSets000.FOLLOW_58_in_rule__AssemblyConnector__Group__0__Impl17857); 
+            match(input,55,FollowSets000.FOLLOW_55_in_rule__AssemblyConnector__Group__0__Impl16489); 
              after(grammarAccess.getAssemblyConnectorAccess().getAssemblyConnectorKeyword_0()); 
 
             }
@@ -23439,21 +21692,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9029:1: rule__AssemblyConnector__Group__1 : rule__AssemblyConnector__Group__1__Impl rule__AssemblyConnector__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8326:1: rule__AssemblyConnector__Group__1 : rule__AssemblyConnector__Group__1__Impl rule__AssemblyConnector__Group__2 ;
     public final void rule__AssemblyConnector__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9033:1: ( rule__AssemblyConnector__Group__1__Impl rule__AssemblyConnector__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9034:2: rule__AssemblyConnector__Group__1__Impl rule__AssemblyConnector__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8330:1: ( rule__AssemblyConnector__Group__1__Impl rule__AssemblyConnector__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8331:2: rule__AssemblyConnector__Group__1__Impl rule__AssemblyConnector__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__1__Impl_in_rule__AssemblyConnector__Group__117888);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__1__Impl_in_rule__AssemblyConnector__Group__116520);
             rule__AssemblyConnector__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__2_in_rule__AssemblyConnector__Group__117891);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__2_in_rule__AssemblyConnector__Group__116523);
             rule__AssemblyConnector__Group__2();
 
             state._fsp--;
@@ -23477,23 +21730,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9041:1: rule__AssemblyConnector__Group__1__Impl : ( ( rule__AssemblyConnector__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8338:1: rule__AssemblyConnector__Group__1__Impl : ( ( rule__AssemblyConnector__NameAssignment_1 ) ) ;
     public final void rule__AssemblyConnector__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9045:1: ( ( ( rule__AssemblyConnector__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9046:1: ( ( rule__AssemblyConnector__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8342:1: ( ( ( rule__AssemblyConnector__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8343:1: ( ( rule__AssemblyConnector__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9046:1: ( ( rule__AssemblyConnector__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9047:1: ( rule__AssemblyConnector__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8343:1: ( ( rule__AssemblyConnector__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8344:1: ( rule__AssemblyConnector__NameAssignment_1 )
             {
              before(grammarAccess.getAssemblyConnectorAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9048:1: ( rule__AssemblyConnector__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9048:2: rule__AssemblyConnector__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8345:1: ( rule__AssemblyConnector__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8345:2: rule__AssemblyConnector__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__NameAssignment_1_in_rule__AssemblyConnector__Group__1__Impl17918);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__NameAssignment_1_in_rule__AssemblyConnector__Group__1__Impl16550);
             rule__AssemblyConnector__NameAssignment_1();
 
             state._fsp--;
@@ -23524,21 +21777,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9058:1: rule__AssemblyConnector__Group__2 : rule__AssemblyConnector__Group__2__Impl rule__AssemblyConnector__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8355:1: rule__AssemblyConnector__Group__2 : rule__AssemblyConnector__Group__2__Impl rule__AssemblyConnector__Group__3 ;
     public final void rule__AssemblyConnector__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9062:1: ( rule__AssemblyConnector__Group__2__Impl rule__AssemblyConnector__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9063:2: rule__AssemblyConnector__Group__2__Impl rule__AssemblyConnector__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8359:1: ( rule__AssemblyConnector__Group__2__Impl rule__AssemblyConnector__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8360:2: rule__AssemblyConnector__Group__2__Impl rule__AssemblyConnector__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__2__Impl_in_rule__AssemblyConnector__Group__217948);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__2__Impl_in_rule__AssemblyConnector__Group__216580);
             rule__AssemblyConnector__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__3_in_rule__AssemblyConnector__Group__217951);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__3_in_rule__AssemblyConnector__Group__216583);
             rule__AssemblyConnector__Group__3();
 
             state._fsp--;
@@ -23562,20 +21815,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9070:1: rule__AssemblyConnector__Group__2__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8367:1: rule__AssemblyConnector__Group__2__Impl : ( '{' ) ;
     public final void rule__AssemblyConnector__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9074:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9075:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8371:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8372:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9075:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9076:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8372:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8373:1: '{'
             {
              before(grammarAccess.getAssemblyConnectorAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__AssemblyConnector__Group__2__Impl17979); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__AssemblyConnector__Group__2__Impl16611); 
              after(grammarAccess.getAssemblyConnectorAccess().getLeftCurlyBracketKeyword_2()); 
 
             }
@@ -23599,21 +21852,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9089:1: rule__AssemblyConnector__Group__3 : rule__AssemblyConnector__Group__3__Impl rule__AssemblyConnector__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8386:1: rule__AssemblyConnector__Group__3 : rule__AssemblyConnector__Group__3__Impl rule__AssemblyConnector__Group__4 ;
     public final void rule__AssemblyConnector__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9093:1: ( rule__AssemblyConnector__Group__3__Impl rule__AssemblyConnector__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9094:2: rule__AssemblyConnector__Group__3__Impl rule__AssemblyConnector__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8390:1: ( rule__AssemblyConnector__Group__3__Impl rule__AssemblyConnector__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8391:2: rule__AssemblyConnector__Group__3__Impl rule__AssemblyConnector__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__3__Impl_in_rule__AssemblyConnector__Group__318010);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__3__Impl_in_rule__AssemblyConnector__Group__316642);
             rule__AssemblyConnector__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__4_in_rule__AssemblyConnector__Group__318013);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__4_in_rule__AssemblyConnector__Group__316645);
             rule__AssemblyConnector__Group__4();
 
             state._fsp--;
@@ -23637,20 +21890,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9101:1: rule__AssemblyConnector__Group__3__Impl : ( 'requiredRole' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8398:1: rule__AssemblyConnector__Group__3__Impl : ( 'requiredRole' ) ;
     public final void rule__AssemblyConnector__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9105:1: ( ( 'requiredRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9106:1: ( 'requiredRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8402:1: ( ( 'requiredRole' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8403:1: ( 'requiredRole' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9106:1: ( 'requiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9107:1: 'requiredRole'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8403:1: ( 'requiredRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8404:1: 'requiredRole'
             {
              before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleKeyword_3()); 
-            match(input,59,FollowSets000.FOLLOW_59_in_rule__AssemblyConnector__Group__3__Impl18041); 
+            match(input,56,FollowSets000.FOLLOW_56_in_rule__AssemblyConnector__Group__3__Impl16673); 
              after(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleKeyword_3()); 
 
             }
@@ -23674,21 +21927,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9120:1: rule__AssemblyConnector__Group__4 : rule__AssemblyConnector__Group__4__Impl rule__AssemblyConnector__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8417:1: rule__AssemblyConnector__Group__4 : rule__AssemblyConnector__Group__4__Impl rule__AssemblyConnector__Group__5 ;
     public final void rule__AssemblyConnector__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9124:1: ( rule__AssemblyConnector__Group__4__Impl rule__AssemblyConnector__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9125:2: rule__AssemblyConnector__Group__4__Impl rule__AssemblyConnector__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8421:1: ( rule__AssemblyConnector__Group__4__Impl rule__AssemblyConnector__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8422:2: rule__AssemblyConnector__Group__4__Impl rule__AssemblyConnector__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__4__Impl_in_rule__AssemblyConnector__Group__418072);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__4__Impl_in_rule__AssemblyConnector__Group__416704);
             rule__AssemblyConnector__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__5_in_rule__AssemblyConnector__Group__418075);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__5_in_rule__AssemblyConnector__Group__416707);
             rule__AssemblyConnector__Group__5();
 
             state._fsp--;
@@ -23712,23 +21965,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9132:1: rule__AssemblyConnector__Group__4__Impl : ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8429:1: rule__AssemblyConnector__Group__4__Impl : ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) ) ;
     public final void rule__AssemblyConnector__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9136:1: ( ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9137:1: ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8433:1: ( ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8434:1: ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9137:1: ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9138:1: ( rule__AssemblyConnector__RequiredRoleAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8434:1: ( ( rule__AssemblyConnector__RequiredRoleAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8435:1: ( rule__AssemblyConnector__RequiredRoleAssignment_4 )
             {
              before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9139:1: ( rule__AssemblyConnector__RequiredRoleAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9139:2: rule__AssemblyConnector__RequiredRoleAssignment_4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8436:1: ( rule__AssemblyConnector__RequiredRoleAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8436:2: rule__AssemblyConnector__RequiredRoleAssignment_4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__RequiredRoleAssignment_4_in_rule__AssemblyConnector__Group__4__Impl18102);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__RequiredRoleAssignment_4_in_rule__AssemblyConnector__Group__4__Impl16734);
             rule__AssemblyConnector__RequiredRoleAssignment_4();
 
             state._fsp--;
@@ -23759,21 +22012,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9149:1: rule__AssemblyConnector__Group__5 : rule__AssemblyConnector__Group__5__Impl rule__AssemblyConnector__Group__6 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8446:1: rule__AssemblyConnector__Group__5 : rule__AssemblyConnector__Group__5__Impl rule__AssemblyConnector__Group__6 ;
     public final void rule__AssemblyConnector__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9153:1: ( rule__AssemblyConnector__Group__5__Impl rule__AssemblyConnector__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9154:2: rule__AssemblyConnector__Group__5__Impl rule__AssemblyConnector__Group__6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8450:1: ( rule__AssemblyConnector__Group__5__Impl rule__AssemblyConnector__Group__6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8451:2: rule__AssemblyConnector__Group__5__Impl rule__AssemblyConnector__Group__6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__5__Impl_in_rule__AssemblyConnector__Group__518132);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__5__Impl_in_rule__AssemblyConnector__Group__516764);
             rule__AssemblyConnector__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__6_in_rule__AssemblyConnector__Group__518135);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__6_in_rule__AssemblyConnector__Group__516767);
             rule__AssemblyConnector__Group__6();
 
             state._fsp--;
@@ -23797,20 +22050,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9161:1: rule__AssemblyConnector__Group__5__Impl : ( 'providedRole' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8458:1: rule__AssemblyConnector__Group__5__Impl : ( 'providedRole' ) ;
     public final void rule__AssemblyConnector__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9165:1: ( ( 'providedRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9166:1: ( 'providedRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8462:1: ( ( 'providedRole' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8463:1: ( 'providedRole' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9166:1: ( 'providedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9167:1: 'providedRole'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8463:1: ( 'providedRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8464:1: 'providedRole'
             {
              before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleKeyword_5()); 
-            match(input,60,FollowSets000.FOLLOW_60_in_rule__AssemblyConnector__Group__5__Impl18163); 
+            match(input,57,FollowSets000.FOLLOW_57_in_rule__AssemblyConnector__Group__5__Impl16795); 
              after(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleKeyword_5()); 
 
             }
@@ -23834,21 +22087,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9180:1: rule__AssemblyConnector__Group__6 : rule__AssemblyConnector__Group__6__Impl rule__AssemblyConnector__Group__7 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8477:1: rule__AssemblyConnector__Group__6 : rule__AssemblyConnector__Group__6__Impl rule__AssemblyConnector__Group__7 ;
     public final void rule__AssemblyConnector__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9184:1: ( rule__AssemblyConnector__Group__6__Impl rule__AssemblyConnector__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9185:2: rule__AssemblyConnector__Group__6__Impl rule__AssemblyConnector__Group__7
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8481:1: ( rule__AssemblyConnector__Group__6__Impl rule__AssemblyConnector__Group__7 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8482:2: rule__AssemblyConnector__Group__6__Impl rule__AssemblyConnector__Group__7
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__6__Impl_in_rule__AssemblyConnector__Group__618194);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__6__Impl_in_rule__AssemblyConnector__Group__616826);
             rule__AssemblyConnector__Group__6__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__7_in_rule__AssemblyConnector__Group__618197);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__7_in_rule__AssemblyConnector__Group__616829);
             rule__AssemblyConnector__Group__7();
 
             state._fsp--;
@@ -23872,23 +22125,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9192:1: rule__AssemblyConnector__Group__6__Impl : ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8489:1: rule__AssemblyConnector__Group__6__Impl : ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) ) ;
     public final void rule__AssemblyConnector__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9196:1: ( ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9197:1: ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8493:1: ( ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8494:1: ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9197:1: ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9198:1: ( rule__AssemblyConnector__ProvidedRoleAssignment_6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8494:1: ( ( rule__AssemblyConnector__ProvidedRoleAssignment_6 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8495:1: ( rule__AssemblyConnector__ProvidedRoleAssignment_6 )
             {
              before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleAssignment_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9199:1: ( rule__AssemblyConnector__ProvidedRoleAssignment_6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9199:2: rule__AssemblyConnector__ProvidedRoleAssignment_6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8496:1: ( rule__AssemblyConnector__ProvidedRoleAssignment_6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8496:2: rule__AssemblyConnector__ProvidedRoleAssignment_6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__ProvidedRoleAssignment_6_in_rule__AssemblyConnector__Group__6__Impl18224);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__ProvidedRoleAssignment_6_in_rule__AssemblyConnector__Group__6__Impl16856);
             rule__AssemblyConnector__ProvidedRoleAssignment_6();
 
             state._fsp--;
@@ -23919,21 +22172,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9209:1: rule__AssemblyConnector__Group__7 : rule__AssemblyConnector__Group__7__Impl rule__AssemblyConnector__Group__8 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8506:1: rule__AssemblyConnector__Group__7 : rule__AssemblyConnector__Group__7__Impl rule__AssemblyConnector__Group__8 ;
     public final void rule__AssemblyConnector__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9213:1: ( rule__AssemblyConnector__Group__7__Impl rule__AssemblyConnector__Group__8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9214:2: rule__AssemblyConnector__Group__7__Impl rule__AssemblyConnector__Group__8
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8510:1: ( rule__AssemblyConnector__Group__7__Impl rule__AssemblyConnector__Group__8 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8511:2: rule__AssemblyConnector__Group__7__Impl rule__AssemblyConnector__Group__8
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__7__Impl_in_rule__AssemblyConnector__Group__718254);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__7__Impl_in_rule__AssemblyConnector__Group__716886);
             rule__AssemblyConnector__Group__7__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__8_in_rule__AssemblyConnector__Group__718257);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__8_in_rule__AssemblyConnector__Group__716889);
             rule__AssemblyConnector__Group__8();
 
             state._fsp--;
@@ -23957,20 +22210,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9221:1: rule__AssemblyConnector__Group__7__Impl : ( 'providingAssemblyContext' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8518:1: rule__AssemblyConnector__Group__7__Impl : ( 'providingAssemblyContext' ) ;
     public final void rule__AssemblyConnector__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9225:1: ( ( 'providingAssemblyContext' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9226:1: ( 'providingAssemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8522:1: ( ( 'providingAssemblyContext' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8523:1: ( 'providingAssemblyContext' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9226:1: ( 'providingAssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9227:1: 'providingAssemblyContext'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8523:1: ( 'providingAssemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8524:1: 'providingAssemblyContext'
             {
              before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextKeyword_7()); 
-            match(input,61,FollowSets000.FOLLOW_61_in_rule__AssemblyConnector__Group__7__Impl18285); 
+            match(input,58,FollowSets000.FOLLOW_58_in_rule__AssemblyConnector__Group__7__Impl16917); 
              after(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextKeyword_7()); 
 
             }
@@ -23994,21 +22247,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9240:1: rule__AssemblyConnector__Group__8 : rule__AssemblyConnector__Group__8__Impl rule__AssemblyConnector__Group__9 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8537:1: rule__AssemblyConnector__Group__8 : rule__AssemblyConnector__Group__8__Impl rule__AssemblyConnector__Group__9 ;
     public final void rule__AssemblyConnector__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9244:1: ( rule__AssemblyConnector__Group__8__Impl rule__AssemblyConnector__Group__9 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9245:2: rule__AssemblyConnector__Group__8__Impl rule__AssemblyConnector__Group__9
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8541:1: ( rule__AssemblyConnector__Group__8__Impl rule__AssemblyConnector__Group__9 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8542:2: rule__AssemblyConnector__Group__8__Impl rule__AssemblyConnector__Group__9
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__8__Impl_in_rule__AssemblyConnector__Group__818316);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__8__Impl_in_rule__AssemblyConnector__Group__816948);
             rule__AssemblyConnector__Group__8__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__9_in_rule__AssemblyConnector__Group__818319);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__9_in_rule__AssemblyConnector__Group__816951);
             rule__AssemblyConnector__Group__9();
 
             state._fsp--;
@@ -24032,23 +22285,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__8__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9252:1: rule__AssemblyConnector__Group__8__Impl : ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8549:1: rule__AssemblyConnector__Group__8__Impl : ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) ) ;
     public final void rule__AssemblyConnector__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9256:1: ( ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9257:1: ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8553:1: ( ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8554:1: ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9257:1: ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9258:1: ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8554:1: ( ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8555:1: ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 )
             {
              before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssignment_8()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9259:1: ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9259:2: rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8556:1: ( rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8556:2: rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8_in_rule__AssemblyConnector__Group__8__Impl18346);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8_in_rule__AssemblyConnector__Group__8__Impl16978);
             rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8();
 
             state._fsp--;
@@ -24079,21 +22332,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__9"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9269:1: rule__AssemblyConnector__Group__9 : rule__AssemblyConnector__Group__9__Impl rule__AssemblyConnector__Group__10 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8566:1: rule__AssemblyConnector__Group__9 : rule__AssemblyConnector__Group__9__Impl rule__AssemblyConnector__Group__10 ;
     public final void rule__AssemblyConnector__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9273:1: ( rule__AssemblyConnector__Group__9__Impl rule__AssemblyConnector__Group__10 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9274:2: rule__AssemblyConnector__Group__9__Impl rule__AssemblyConnector__Group__10
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8570:1: ( rule__AssemblyConnector__Group__9__Impl rule__AssemblyConnector__Group__10 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8571:2: rule__AssemblyConnector__Group__9__Impl rule__AssemblyConnector__Group__10
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__9__Impl_in_rule__AssemblyConnector__Group__918376);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__9__Impl_in_rule__AssemblyConnector__Group__917008);
             rule__AssemblyConnector__Group__9__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__10_in_rule__AssemblyConnector__Group__918379);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__10_in_rule__AssemblyConnector__Group__917011);
             rule__AssemblyConnector__Group__10();
 
             state._fsp--;
@@ -24117,20 +22370,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__9__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9281:1: rule__AssemblyConnector__Group__9__Impl : ( 'requiringAssemblyContext' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8578:1: rule__AssemblyConnector__Group__9__Impl : ( 'requiringAssemblyContext' ) ;
     public final void rule__AssemblyConnector__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9285:1: ( ( 'requiringAssemblyContext' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9286:1: ( 'requiringAssemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8582:1: ( ( 'requiringAssemblyContext' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8583:1: ( 'requiringAssemblyContext' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9286:1: ( 'requiringAssemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9287:1: 'requiringAssemblyContext'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8583:1: ( 'requiringAssemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8584:1: 'requiringAssemblyContext'
             {
              before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextKeyword_9()); 
-            match(input,62,FollowSets000.FOLLOW_62_in_rule__AssemblyConnector__Group__9__Impl18407); 
+            match(input,59,FollowSets000.FOLLOW_59_in_rule__AssemblyConnector__Group__9__Impl17039); 
              after(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextKeyword_9()); 
 
             }
@@ -24154,21 +22407,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__10"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9300:1: rule__AssemblyConnector__Group__10 : rule__AssemblyConnector__Group__10__Impl rule__AssemblyConnector__Group__11 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8597:1: rule__AssemblyConnector__Group__10 : rule__AssemblyConnector__Group__10__Impl rule__AssemblyConnector__Group__11 ;
     public final void rule__AssemblyConnector__Group__10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9304:1: ( rule__AssemblyConnector__Group__10__Impl rule__AssemblyConnector__Group__11 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9305:2: rule__AssemblyConnector__Group__10__Impl rule__AssemblyConnector__Group__11
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8601:1: ( rule__AssemblyConnector__Group__10__Impl rule__AssemblyConnector__Group__11 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8602:2: rule__AssemblyConnector__Group__10__Impl rule__AssemblyConnector__Group__11
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__10__Impl_in_rule__AssemblyConnector__Group__1018438);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__10__Impl_in_rule__AssemblyConnector__Group__1017070);
             rule__AssemblyConnector__Group__10__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__11_in_rule__AssemblyConnector__Group__1018441);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__11_in_rule__AssemblyConnector__Group__1017073);
             rule__AssemblyConnector__Group__11();
 
             state._fsp--;
@@ -24192,23 +22445,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__10__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9312:1: rule__AssemblyConnector__Group__10__Impl : ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8609:1: rule__AssemblyConnector__Group__10__Impl : ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) ) ;
     public final void rule__AssemblyConnector__Group__10__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9316:1: ( ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9317:1: ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8613:1: ( ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8614:1: ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9317:1: ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9318:1: ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8614:1: ( ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8615:1: ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 )
             {
              before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssignment_10()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9319:1: ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9319:2: rule__AssemblyConnector__RequiringAssemblyContextAssignment_10
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8616:1: ( rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8616:2: rule__AssemblyConnector__RequiringAssemblyContextAssignment_10
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__RequiringAssemblyContextAssignment_10_in_rule__AssemblyConnector__Group__10__Impl18468);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__RequiringAssemblyContextAssignment_10_in_rule__AssemblyConnector__Group__10__Impl17100);
             rule__AssemblyConnector__RequiringAssemblyContextAssignment_10();
 
             state._fsp--;
@@ -24239,16 +22492,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__11"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9329:1: rule__AssemblyConnector__Group__11 : rule__AssemblyConnector__Group__11__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8626:1: rule__AssemblyConnector__Group__11 : rule__AssemblyConnector__Group__11__Impl ;
     public final void rule__AssemblyConnector__Group__11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9333:1: ( rule__AssemblyConnector__Group__11__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9334:2: rule__AssemblyConnector__Group__11__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8630:1: ( rule__AssemblyConnector__Group__11__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8631:2: rule__AssemblyConnector__Group__11__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__11__Impl_in_rule__AssemblyConnector__Group__1118498);
+            pushFollow(FollowSets000.FOLLOW_rule__AssemblyConnector__Group__11__Impl_in_rule__AssemblyConnector__Group__1117130);
             rule__AssemblyConnector__Group__11__Impl();
 
             state._fsp--;
@@ -24272,20 +22525,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__Group__11__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9340:1: rule__AssemblyConnector__Group__11__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8637:1: rule__AssemblyConnector__Group__11__Impl : ( '}' ) ;
     public final void rule__AssemblyConnector__Group__11__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9344:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9345:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8641:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8642:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9345:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9346:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8642:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8643:1: '}'
             {
              before(grammarAccess.getAssemblyConnectorAccess().getRightCurlyBracketKeyword_11()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__AssemblyConnector__Group__11__Impl18526); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__AssemblyConnector__Group__11__Impl17158); 
              after(grammarAccess.getAssemblyConnectorAccess().getRightCurlyBracketKeyword_11()); 
 
             }
@@ -24309,21 +22562,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9383:1: rule__ProvidedDelegationConnector__Group__0 : rule__ProvidedDelegationConnector__Group__0__Impl rule__ProvidedDelegationConnector__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8680:1: rule__ProvidedDelegationConnector__Group__0 : rule__ProvidedDelegationConnector__Group__0__Impl rule__ProvidedDelegationConnector__Group__1 ;
     public final void rule__ProvidedDelegationConnector__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9387:1: ( rule__ProvidedDelegationConnector__Group__0__Impl rule__ProvidedDelegationConnector__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9388:2: rule__ProvidedDelegationConnector__Group__0__Impl rule__ProvidedDelegationConnector__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8684:1: ( rule__ProvidedDelegationConnector__Group__0__Impl rule__ProvidedDelegationConnector__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8685:2: rule__ProvidedDelegationConnector__Group__0__Impl rule__ProvidedDelegationConnector__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__0__Impl_in_rule__ProvidedDelegationConnector__Group__018581);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__0__Impl_in_rule__ProvidedDelegationConnector__Group__017213);
             rule__ProvidedDelegationConnector__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__1_in_rule__ProvidedDelegationConnector__Group__018584);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__1_in_rule__ProvidedDelegationConnector__Group__017216);
             rule__ProvidedDelegationConnector__Group__1();
 
             state._fsp--;
@@ -24347,20 +22600,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9395:1: rule__ProvidedDelegationConnector__Group__0__Impl : ( 'ProvidedDelegationConnector' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8692:1: rule__ProvidedDelegationConnector__Group__0__Impl : ( 'ProvidedDelegationConnector' ) ;
     public final void rule__ProvidedDelegationConnector__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9399:1: ( ( 'ProvidedDelegationConnector' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9400:1: ( 'ProvidedDelegationConnector' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8696:1: ( ( 'ProvidedDelegationConnector' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8697:1: ( 'ProvidedDelegationConnector' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9400:1: ( 'ProvidedDelegationConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9401:1: 'ProvidedDelegationConnector'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8697:1: ( 'ProvidedDelegationConnector' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8698:1: 'ProvidedDelegationConnector'
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getProvidedDelegationConnectorKeyword_0()); 
-            match(input,63,FollowSets000.FOLLOW_63_in_rule__ProvidedDelegationConnector__Group__0__Impl18612); 
+            match(input,60,FollowSets000.FOLLOW_60_in_rule__ProvidedDelegationConnector__Group__0__Impl17244); 
              after(grammarAccess.getProvidedDelegationConnectorAccess().getProvidedDelegationConnectorKeyword_0()); 
 
             }
@@ -24384,21 +22637,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9414:1: rule__ProvidedDelegationConnector__Group__1 : rule__ProvidedDelegationConnector__Group__1__Impl rule__ProvidedDelegationConnector__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8711:1: rule__ProvidedDelegationConnector__Group__1 : rule__ProvidedDelegationConnector__Group__1__Impl rule__ProvidedDelegationConnector__Group__2 ;
     public final void rule__ProvidedDelegationConnector__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9418:1: ( rule__ProvidedDelegationConnector__Group__1__Impl rule__ProvidedDelegationConnector__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9419:2: rule__ProvidedDelegationConnector__Group__1__Impl rule__ProvidedDelegationConnector__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8715:1: ( rule__ProvidedDelegationConnector__Group__1__Impl rule__ProvidedDelegationConnector__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8716:2: rule__ProvidedDelegationConnector__Group__1__Impl rule__ProvidedDelegationConnector__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__1__Impl_in_rule__ProvidedDelegationConnector__Group__118643);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__1__Impl_in_rule__ProvidedDelegationConnector__Group__117275);
             rule__ProvidedDelegationConnector__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__2_in_rule__ProvidedDelegationConnector__Group__118646);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__2_in_rule__ProvidedDelegationConnector__Group__117278);
             rule__ProvidedDelegationConnector__Group__2();
 
             state._fsp--;
@@ -24422,23 +22675,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9426:1: rule__ProvidedDelegationConnector__Group__1__Impl : ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8723:1: rule__ProvidedDelegationConnector__Group__1__Impl : ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) ) ;
     public final void rule__ProvidedDelegationConnector__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9430:1: ( ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9431:1: ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8727:1: ( ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8728:1: ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9431:1: ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9432:1: ( rule__ProvidedDelegationConnector__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8728:1: ( ( rule__ProvidedDelegationConnector__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8729:1: ( rule__ProvidedDelegationConnector__NameAssignment_1 )
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9433:1: ( rule__ProvidedDelegationConnector__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9433:2: rule__ProvidedDelegationConnector__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8730:1: ( rule__ProvidedDelegationConnector__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8730:2: rule__ProvidedDelegationConnector__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__NameAssignment_1_in_rule__ProvidedDelegationConnector__Group__1__Impl18673);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__NameAssignment_1_in_rule__ProvidedDelegationConnector__Group__1__Impl17305);
             rule__ProvidedDelegationConnector__NameAssignment_1();
 
             state._fsp--;
@@ -24469,21 +22722,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9443:1: rule__ProvidedDelegationConnector__Group__2 : rule__ProvidedDelegationConnector__Group__2__Impl rule__ProvidedDelegationConnector__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8740:1: rule__ProvidedDelegationConnector__Group__2 : rule__ProvidedDelegationConnector__Group__2__Impl rule__ProvidedDelegationConnector__Group__3 ;
     public final void rule__ProvidedDelegationConnector__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9447:1: ( rule__ProvidedDelegationConnector__Group__2__Impl rule__ProvidedDelegationConnector__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9448:2: rule__ProvidedDelegationConnector__Group__2__Impl rule__ProvidedDelegationConnector__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8744:1: ( rule__ProvidedDelegationConnector__Group__2__Impl rule__ProvidedDelegationConnector__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8745:2: rule__ProvidedDelegationConnector__Group__2__Impl rule__ProvidedDelegationConnector__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__2__Impl_in_rule__ProvidedDelegationConnector__Group__218703);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__2__Impl_in_rule__ProvidedDelegationConnector__Group__217335);
             rule__ProvidedDelegationConnector__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__3_in_rule__ProvidedDelegationConnector__Group__218706);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__3_in_rule__ProvidedDelegationConnector__Group__217338);
             rule__ProvidedDelegationConnector__Group__3();
 
             state._fsp--;
@@ -24507,20 +22760,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9455:1: rule__ProvidedDelegationConnector__Group__2__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8752:1: rule__ProvidedDelegationConnector__Group__2__Impl : ( '{' ) ;
     public final void rule__ProvidedDelegationConnector__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9459:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9460:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8756:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8757:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9460:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9461:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8757:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8758:1: '{'
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__ProvidedDelegationConnector__Group__2__Impl18734); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__ProvidedDelegationConnector__Group__2__Impl17366); 
              after(grammarAccess.getProvidedDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); 
 
             }
@@ -24544,21 +22797,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9474:1: rule__ProvidedDelegationConnector__Group__3 : rule__ProvidedDelegationConnector__Group__3__Impl rule__ProvidedDelegationConnector__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8771:1: rule__ProvidedDelegationConnector__Group__3 : rule__ProvidedDelegationConnector__Group__3__Impl rule__ProvidedDelegationConnector__Group__4 ;
     public final void rule__ProvidedDelegationConnector__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9478:1: ( rule__ProvidedDelegationConnector__Group__3__Impl rule__ProvidedDelegationConnector__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9479:2: rule__ProvidedDelegationConnector__Group__3__Impl rule__ProvidedDelegationConnector__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8775:1: ( rule__ProvidedDelegationConnector__Group__3__Impl rule__ProvidedDelegationConnector__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8776:2: rule__ProvidedDelegationConnector__Group__3__Impl rule__ProvidedDelegationConnector__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__3__Impl_in_rule__ProvidedDelegationConnector__Group__318765);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__3__Impl_in_rule__ProvidedDelegationConnector__Group__317397);
             rule__ProvidedDelegationConnector__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__4_in_rule__ProvidedDelegationConnector__Group__318768);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__4_in_rule__ProvidedDelegationConnector__Group__317400);
             rule__ProvidedDelegationConnector__Group__4();
 
             state._fsp--;
@@ -24582,20 +22835,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9486:1: rule__ProvidedDelegationConnector__Group__3__Impl : ( 'assemblyContext' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8783:1: rule__ProvidedDelegationConnector__Group__3__Impl : ( 'assemblyContext' ) ;
     public final void rule__ProvidedDelegationConnector__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9490:1: ( ( 'assemblyContext' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9491:1: ( 'assemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8787:1: ( ( 'assemblyContext' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8788:1: ( 'assemblyContext' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9491:1: ( 'assemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9492:1: 'assemblyContext'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8788:1: ( 'assemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8789:1: 'assemblyContext'
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextKeyword_3()); 
-            match(input,64,FollowSets000.FOLLOW_64_in_rule__ProvidedDelegationConnector__Group__3__Impl18796); 
+            match(input,61,FollowSets000.FOLLOW_61_in_rule__ProvidedDelegationConnector__Group__3__Impl17428); 
              after(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextKeyword_3()); 
 
             }
@@ -24619,21 +22872,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9505:1: rule__ProvidedDelegationConnector__Group__4 : rule__ProvidedDelegationConnector__Group__4__Impl rule__ProvidedDelegationConnector__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8802:1: rule__ProvidedDelegationConnector__Group__4 : rule__ProvidedDelegationConnector__Group__4__Impl rule__ProvidedDelegationConnector__Group__5 ;
     public final void rule__ProvidedDelegationConnector__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9509:1: ( rule__ProvidedDelegationConnector__Group__4__Impl rule__ProvidedDelegationConnector__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9510:2: rule__ProvidedDelegationConnector__Group__4__Impl rule__ProvidedDelegationConnector__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8806:1: ( rule__ProvidedDelegationConnector__Group__4__Impl rule__ProvidedDelegationConnector__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8807:2: rule__ProvidedDelegationConnector__Group__4__Impl rule__ProvidedDelegationConnector__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__4__Impl_in_rule__ProvidedDelegationConnector__Group__418827);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__4__Impl_in_rule__ProvidedDelegationConnector__Group__417459);
             rule__ProvidedDelegationConnector__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__5_in_rule__ProvidedDelegationConnector__Group__418830);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__5_in_rule__ProvidedDelegationConnector__Group__417462);
             rule__ProvidedDelegationConnector__Group__5();
 
             state._fsp--;
@@ -24657,23 +22910,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9517:1: rule__ProvidedDelegationConnector__Group__4__Impl : ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8814:1: rule__ProvidedDelegationConnector__Group__4__Impl : ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) ) ;
     public final void rule__ProvidedDelegationConnector__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9521:1: ( ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9522:1: ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8818:1: ( ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8819:1: ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9522:1: ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9523:1: ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8819:1: ( ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8820:1: ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 )
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9524:1: ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9524:2: rule__ProvidedDelegationConnector__AssemblyContextAssignment_4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8821:1: ( rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8821:2: rule__ProvidedDelegationConnector__AssemblyContextAssignment_4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__AssemblyContextAssignment_4_in_rule__ProvidedDelegationConnector__Group__4__Impl18857);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__AssemblyContextAssignment_4_in_rule__ProvidedDelegationConnector__Group__4__Impl17489);
             rule__ProvidedDelegationConnector__AssemblyContextAssignment_4();
 
             state._fsp--;
@@ -24704,21 +22957,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9534:1: rule__ProvidedDelegationConnector__Group__5 : rule__ProvidedDelegationConnector__Group__5__Impl rule__ProvidedDelegationConnector__Group__6 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8831:1: rule__ProvidedDelegationConnector__Group__5 : rule__ProvidedDelegationConnector__Group__5__Impl rule__ProvidedDelegationConnector__Group__6 ;
     public final void rule__ProvidedDelegationConnector__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9538:1: ( rule__ProvidedDelegationConnector__Group__5__Impl rule__ProvidedDelegationConnector__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9539:2: rule__ProvidedDelegationConnector__Group__5__Impl rule__ProvidedDelegationConnector__Group__6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8835:1: ( rule__ProvidedDelegationConnector__Group__5__Impl rule__ProvidedDelegationConnector__Group__6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8836:2: rule__ProvidedDelegationConnector__Group__5__Impl rule__ProvidedDelegationConnector__Group__6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__5__Impl_in_rule__ProvidedDelegationConnector__Group__518887);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__5__Impl_in_rule__ProvidedDelegationConnector__Group__517519);
             rule__ProvidedDelegationConnector__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__6_in_rule__ProvidedDelegationConnector__Group__518890);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__6_in_rule__ProvidedDelegationConnector__Group__517522);
             rule__ProvidedDelegationConnector__Group__6();
 
             state._fsp--;
@@ -24742,20 +22995,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9546:1: rule__ProvidedDelegationConnector__Group__5__Impl : ( 'innerProvidedRole' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8843:1: rule__ProvidedDelegationConnector__Group__5__Impl : ( 'innerProvidedRole' ) ;
     public final void rule__ProvidedDelegationConnector__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9550:1: ( ( 'innerProvidedRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9551:1: ( 'innerProvidedRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8847:1: ( ( 'innerProvidedRole' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8848:1: ( 'innerProvidedRole' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9551:1: ( 'innerProvidedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9552:1: 'innerProvidedRole'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8848:1: ( 'innerProvidedRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8849:1: 'innerProvidedRole'
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleKeyword_5()); 
-            match(input,65,FollowSets000.FOLLOW_65_in_rule__ProvidedDelegationConnector__Group__5__Impl18918); 
+            match(input,62,FollowSets000.FOLLOW_62_in_rule__ProvidedDelegationConnector__Group__5__Impl17550); 
              after(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleKeyword_5()); 
 
             }
@@ -24779,21 +23032,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9565:1: rule__ProvidedDelegationConnector__Group__6 : rule__ProvidedDelegationConnector__Group__6__Impl rule__ProvidedDelegationConnector__Group__7 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8862:1: rule__ProvidedDelegationConnector__Group__6 : rule__ProvidedDelegationConnector__Group__6__Impl rule__ProvidedDelegationConnector__Group__7 ;
     public final void rule__ProvidedDelegationConnector__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9569:1: ( rule__ProvidedDelegationConnector__Group__6__Impl rule__ProvidedDelegationConnector__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9570:2: rule__ProvidedDelegationConnector__Group__6__Impl rule__ProvidedDelegationConnector__Group__7
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8866:1: ( rule__ProvidedDelegationConnector__Group__6__Impl rule__ProvidedDelegationConnector__Group__7 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8867:2: rule__ProvidedDelegationConnector__Group__6__Impl rule__ProvidedDelegationConnector__Group__7
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__6__Impl_in_rule__ProvidedDelegationConnector__Group__618949);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__6__Impl_in_rule__ProvidedDelegationConnector__Group__617581);
             rule__ProvidedDelegationConnector__Group__6__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__7_in_rule__ProvidedDelegationConnector__Group__618952);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__7_in_rule__ProvidedDelegationConnector__Group__617584);
             rule__ProvidedDelegationConnector__Group__7();
 
             state._fsp--;
@@ -24817,23 +23070,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9577:1: rule__ProvidedDelegationConnector__Group__6__Impl : ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8874:1: rule__ProvidedDelegationConnector__Group__6__Impl : ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) ) ;
     public final void rule__ProvidedDelegationConnector__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9581:1: ( ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9582:1: ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8878:1: ( ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8879:1: ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9582:1: ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9583:1: ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8879:1: ( ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8880:1: ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 )
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleAssignment_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9584:1: ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9584:2: rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8881:1: ( rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8881:2: rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6_in_rule__ProvidedDelegationConnector__Group__6__Impl18979);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6_in_rule__ProvidedDelegationConnector__Group__6__Impl17611);
             rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6();
 
             state._fsp--;
@@ -24864,21 +23117,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9594:1: rule__ProvidedDelegationConnector__Group__7 : rule__ProvidedDelegationConnector__Group__7__Impl rule__ProvidedDelegationConnector__Group__8 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8891:1: rule__ProvidedDelegationConnector__Group__7 : rule__ProvidedDelegationConnector__Group__7__Impl rule__ProvidedDelegationConnector__Group__8 ;
     public final void rule__ProvidedDelegationConnector__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9598:1: ( rule__ProvidedDelegationConnector__Group__7__Impl rule__ProvidedDelegationConnector__Group__8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9599:2: rule__ProvidedDelegationConnector__Group__7__Impl rule__ProvidedDelegationConnector__Group__8
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8895:1: ( rule__ProvidedDelegationConnector__Group__7__Impl rule__ProvidedDelegationConnector__Group__8 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8896:2: rule__ProvidedDelegationConnector__Group__7__Impl rule__ProvidedDelegationConnector__Group__8
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__7__Impl_in_rule__ProvidedDelegationConnector__Group__719009);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__7__Impl_in_rule__ProvidedDelegationConnector__Group__717641);
             rule__ProvidedDelegationConnector__Group__7__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__8_in_rule__ProvidedDelegationConnector__Group__719012);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__8_in_rule__ProvidedDelegationConnector__Group__717644);
             rule__ProvidedDelegationConnector__Group__8();
 
             state._fsp--;
@@ -24902,20 +23155,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9606:1: rule__ProvidedDelegationConnector__Group__7__Impl : ( 'outerProvidedRole' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8903:1: rule__ProvidedDelegationConnector__Group__7__Impl : ( 'outerProvidedRole' ) ;
     public final void rule__ProvidedDelegationConnector__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9610:1: ( ( 'outerProvidedRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9611:1: ( 'outerProvidedRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8907:1: ( ( 'outerProvidedRole' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8908:1: ( 'outerProvidedRole' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9611:1: ( 'outerProvidedRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9612:1: 'outerProvidedRole'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8908:1: ( 'outerProvidedRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8909:1: 'outerProvidedRole'
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleKeyword_7()); 
-            match(input,66,FollowSets000.FOLLOW_66_in_rule__ProvidedDelegationConnector__Group__7__Impl19040); 
+            match(input,63,FollowSets000.FOLLOW_63_in_rule__ProvidedDelegationConnector__Group__7__Impl17672); 
              after(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleKeyword_7()); 
 
             }
@@ -24939,21 +23192,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9625:1: rule__ProvidedDelegationConnector__Group__8 : rule__ProvidedDelegationConnector__Group__8__Impl rule__ProvidedDelegationConnector__Group__9 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8922:1: rule__ProvidedDelegationConnector__Group__8 : rule__ProvidedDelegationConnector__Group__8__Impl rule__ProvidedDelegationConnector__Group__9 ;
     public final void rule__ProvidedDelegationConnector__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9629:1: ( rule__ProvidedDelegationConnector__Group__8__Impl rule__ProvidedDelegationConnector__Group__9 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9630:2: rule__ProvidedDelegationConnector__Group__8__Impl rule__ProvidedDelegationConnector__Group__9
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8926:1: ( rule__ProvidedDelegationConnector__Group__8__Impl rule__ProvidedDelegationConnector__Group__9 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8927:2: rule__ProvidedDelegationConnector__Group__8__Impl rule__ProvidedDelegationConnector__Group__9
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__8__Impl_in_rule__ProvidedDelegationConnector__Group__819071);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__8__Impl_in_rule__ProvidedDelegationConnector__Group__817703);
             rule__ProvidedDelegationConnector__Group__8__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__9_in_rule__ProvidedDelegationConnector__Group__819074);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__9_in_rule__ProvidedDelegationConnector__Group__817706);
             rule__ProvidedDelegationConnector__Group__9();
 
             state._fsp--;
@@ -24977,23 +23230,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__8__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9637:1: rule__ProvidedDelegationConnector__Group__8__Impl : ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8934:1: rule__ProvidedDelegationConnector__Group__8__Impl : ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) ) ;
     public final void rule__ProvidedDelegationConnector__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9641:1: ( ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9642:1: ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8938:1: ( ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8939:1: ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9642:1: ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9643:1: ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8939:1: ( ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8940:1: ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 )
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleAssignment_8()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9644:1: ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9644:2: rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8941:1: ( rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8941:2: rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8_in_rule__ProvidedDelegationConnector__Group__8__Impl19101);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8_in_rule__ProvidedDelegationConnector__Group__8__Impl17733);
             rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8();
 
             state._fsp--;
@@ -25024,16 +23277,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__9"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9654:1: rule__ProvidedDelegationConnector__Group__9 : rule__ProvidedDelegationConnector__Group__9__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8951:1: rule__ProvidedDelegationConnector__Group__9 : rule__ProvidedDelegationConnector__Group__9__Impl ;
     public final void rule__ProvidedDelegationConnector__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9658:1: ( rule__ProvidedDelegationConnector__Group__9__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9659:2: rule__ProvidedDelegationConnector__Group__9__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8955:1: ( rule__ProvidedDelegationConnector__Group__9__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8956:2: rule__ProvidedDelegationConnector__Group__9__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__9__Impl_in_rule__ProvidedDelegationConnector__Group__919131);
+            pushFollow(FollowSets000.FOLLOW_rule__ProvidedDelegationConnector__Group__9__Impl_in_rule__ProvidedDelegationConnector__Group__917763);
             rule__ProvidedDelegationConnector__Group__9__Impl();
 
             state._fsp--;
@@ -25057,20 +23310,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__Group__9__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9665:1: rule__ProvidedDelegationConnector__Group__9__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8962:1: rule__ProvidedDelegationConnector__Group__9__Impl : ( '}' ) ;
     public final void rule__ProvidedDelegationConnector__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9669:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9670:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8966:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8967:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9670:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9671:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8967:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:8968:1: '}'
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__ProvidedDelegationConnector__Group__9__Impl19159); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__ProvidedDelegationConnector__Group__9__Impl17791); 
              after(grammarAccess.getProvidedDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); 
 
             }
@@ -25094,21 +23347,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9704:1: rule__RequiredDelegationConnector__Group__0 : rule__RequiredDelegationConnector__Group__0__Impl rule__RequiredDelegationConnector__Group__1 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9001:1: rule__RequiredDelegationConnector__Group__0 : rule__RequiredDelegationConnector__Group__0__Impl rule__RequiredDelegationConnector__Group__1 ;
     public final void rule__RequiredDelegationConnector__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9708:1: ( rule__RequiredDelegationConnector__Group__0__Impl rule__RequiredDelegationConnector__Group__1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9709:2: rule__RequiredDelegationConnector__Group__0__Impl rule__RequiredDelegationConnector__Group__1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9005:1: ( rule__RequiredDelegationConnector__Group__0__Impl rule__RequiredDelegationConnector__Group__1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9006:2: rule__RequiredDelegationConnector__Group__0__Impl rule__RequiredDelegationConnector__Group__1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__0__Impl_in_rule__RequiredDelegationConnector__Group__019210);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__0__Impl_in_rule__RequiredDelegationConnector__Group__017842);
             rule__RequiredDelegationConnector__Group__0__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__1_in_rule__RequiredDelegationConnector__Group__019213);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__1_in_rule__RequiredDelegationConnector__Group__017845);
             rule__RequiredDelegationConnector__Group__1();
 
             state._fsp--;
@@ -25132,20 +23385,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__0__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9716:1: rule__RequiredDelegationConnector__Group__0__Impl : ( 'RequiredDelegationConnector' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9013:1: rule__RequiredDelegationConnector__Group__0__Impl : ( 'RequiredDelegationConnector' ) ;
     public final void rule__RequiredDelegationConnector__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9720:1: ( ( 'RequiredDelegationConnector' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9721:1: ( 'RequiredDelegationConnector' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9017:1: ( ( 'RequiredDelegationConnector' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9018:1: ( 'RequiredDelegationConnector' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9721:1: ( 'RequiredDelegationConnector' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9722:1: 'RequiredDelegationConnector'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9018:1: ( 'RequiredDelegationConnector' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9019:1: 'RequiredDelegationConnector'
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getRequiredDelegationConnectorKeyword_0()); 
-            match(input,67,FollowSets000.FOLLOW_67_in_rule__RequiredDelegationConnector__Group__0__Impl19241); 
+            match(input,64,FollowSets000.FOLLOW_64_in_rule__RequiredDelegationConnector__Group__0__Impl17873); 
              after(grammarAccess.getRequiredDelegationConnectorAccess().getRequiredDelegationConnectorKeyword_0()); 
 
             }
@@ -25169,21 +23422,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9735:1: rule__RequiredDelegationConnector__Group__1 : rule__RequiredDelegationConnector__Group__1__Impl rule__RequiredDelegationConnector__Group__2 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9032:1: rule__RequiredDelegationConnector__Group__1 : rule__RequiredDelegationConnector__Group__1__Impl rule__RequiredDelegationConnector__Group__2 ;
     public final void rule__RequiredDelegationConnector__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9739:1: ( rule__RequiredDelegationConnector__Group__1__Impl rule__RequiredDelegationConnector__Group__2 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9740:2: rule__RequiredDelegationConnector__Group__1__Impl rule__RequiredDelegationConnector__Group__2
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9036:1: ( rule__RequiredDelegationConnector__Group__1__Impl rule__RequiredDelegationConnector__Group__2 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9037:2: rule__RequiredDelegationConnector__Group__1__Impl rule__RequiredDelegationConnector__Group__2
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__1__Impl_in_rule__RequiredDelegationConnector__Group__119272);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__1__Impl_in_rule__RequiredDelegationConnector__Group__117904);
             rule__RequiredDelegationConnector__Group__1__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__2_in_rule__RequiredDelegationConnector__Group__119275);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__2_in_rule__RequiredDelegationConnector__Group__117907);
             rule__RequiredDelegationConnector__Group__2();
 
             state._fsp--;
@@ -25207,23 +23460,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__1__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9747:1: rule__RequiredDelegationConnector__Group__1__Impl : ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9044:1: rule__RequiredDelegationConnector__Group__1__Impl : ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) ) ;
     public final void rule__RequiredDelegationConnector__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9751:1: ( ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9752:1: ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9048:1: ( ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9049:1: ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9752:1: ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9753:1: ( rule__RequiredDelegationConnector__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9049:1: ( ( rule__RequiredDelegationConnector__NameAssignment_1 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9050:1: ( rule__RequiredDelegationConnector__NameAssignment_1 )
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getNameAssignment_1()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9754:1: ( rule__RequiredDelegationConnector__NameAssignment_1 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9754:2: rule__RequiredDelegationConnector__NameAssignment_1
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9051:1: ( rule__RequiredDelegationConnector__NameAssignment_1 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9051:2: rule__RequiredDelegationConnector__NameAssignment_1
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__NameAssignment_1_in_rule__RequiredDelegationConnector__Group__1__Impl19302);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__NameAssignment_1_in_rule__RequiredDelegationConnector__Group__1__Impl17934);
             rule__RequiredDelegationConnector__NameAssignment_1();
 
             state._fsp--;
@@ -25254,21 +23507,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9764:1: rule__RequiredDelegationConnector__Group__2 : rule__RequiredDelegationConnector__Group__2__Impl rule__RequiredDelegationConnector__Group__3 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9061:1: rule__RequiredDelegationConnector__Group__2 : rule__RequiredDelegationConnector__Group__2__Impl rule__RequiredDelegationConnector__Group__3 ;
     public final void rule__RequiredDelegationConnector__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9768:1: ( rule__RequiredDelegationConnector__Group__2__Impl rule__RequiredDelegationConnector__Group__3 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9769:2: rule__RequiredDelegationConnector__Group__2__Impl rule__RequiredDelegationConnector__Group__3
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9065:1: ( rule__RequiredDelegationConnector__Group__2__Impl rule__RequiredDelegationConnector__Group__3 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9066:2: rule__RequiredDelegationConnector__Group__2__Impl rule__RequiredDelegationConnector__Group__3
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__2__Impl_in_rule__RequiredDelegationConnector__Group__219332);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__2__Impl_in_rule__RequiredDelegationConnector__Group__217964);
             rule__RequiredDelegationConnector__Group__2__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__3_in_rule__RequiredDelegationConnector__Group__219335);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__3_in_rule__RequiredDelegationConnector__Group__217967);
             rule__RequiredDelegationConnector__Group__3();
 
             state._fsp--;
@@ -25292,20 +23545,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__2__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9776:1: rule__RequiredDelegationConnector__Group__2__Impl : ( '{' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9073:1: rule__RequiredDelegationConnector__Group__2__Impl : ( '{' ) ;
     public final void rule__RequiredDelegationConnector__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9780:1: ( ( '{' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9781:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9077:1: ( ( '{' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9078:1: ( '{' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9781:1: ( '{' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9782:1: '{'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9078:1: ( '{' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9079:1: '{'
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); 
-            match(input,20,FollowSets000.FOLLOW_20_in_rule__RequiredDelegationConnector__Group__2__Impl19363); 
+            match(input,20,FollowSets000.FOLLOW_20_in_rule__RequiredDelegationConnector__Group__2__Impl17995); 
              after(grammarAccess.getRequiredDelegationConnectorAccess().getLeftCurlyBracketKeyword_2()); 
 
             }
@@ -25329,21 +23582,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9795:1: rule__RequiredDelegationConnector__Group__3 : rule__RequiredDelegationConnector__Group__3__Impl rule__RequiredDelegationConnector__Group__4 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9092:1: rule__RequiredDelegationConnector__Group__3 : rule__RequiredDelegationConnector__Group__3__Impl rule__RequiredDelegationConnector__Group__4 ;
     public final void rule__RequiredDelegationConnector__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9799:1: ( rule__RequiredDelegationConnector__Group__3__Impl rule__RequiredDelegationConnector__Group__4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9800:2: rule__RequiredDelegationConnector__Group__3__Impl rule__RequiredDelegationConnector__Group__4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9096:1: ( rule__RequiredDelegationConnector__Group__3__Impl rule__RequiredDelegationConnector__Group__4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9097:2: rule__RequiredDelegationConnector__Group__3__Impl rule__RequiredDelegationConnector__Group__4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__3__Impl_in_rule__RequiredDelegationConnector__Group__319394);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__3__Impl_in_rule__RequiredDelegationConnector__Group__318026);
             rule__RequiredDelegationConnector__Group__3__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__4_in_rule__RequiredDelegationConnector__Group__319397);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__4_in_rule__RequiredDelegationConnector__Group__318029);
             rule__RequiredDelegationConnector__Group__4();
 
             state._fsp--;
@@ -25367,20 +23620,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__3__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9807:1: rule__RequiredDelegationConnector__Group__3__Impl : ( 'assemblyContext' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9104:1: rule__RequiredDelegationConnector__Group__3__Impl : ( 'assemblyContext' ) ;
     public final void rule__RequiredDelegationConnector__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9811:1: ( ( 'assemblyContext' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9812:1: ( 'assemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9108:1: ( ( 'assemblyContext' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9109:1: ( 'assemblyContext' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9812:1: ( 'assemblyContext' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9813:1: 'assemblyContext'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9109:1: ( 'assemblyContext' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9110:1: 'assemblyContext'
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextKeyword_3()); 
-            match(input,64,FollowSets000.FOLLOW_64_in_rule__RequiredDelegationConnector__Group__3__Impl19425); 
+            match(input,61,FollowSets000.FOLLOW_61_in_rule__RequiredDelegationConnector__Group__3__Impl18057); 
              after(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextKeyword_3()); 
 
             }
@@ -25404,21 +23657,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9826:1: rule__RequiredDelegationConnector__Group__4 : rule__RequiredDelegationConnector__Group__4__Impl rule__RequiredDelegationConnector__Group__5 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9123:1: rule__RequiredDelegationConnector__Group__4 : rule__RequiredDelegationConnector__Group__4__Impl rule__RequiredDelegationConnector__Group__5 ;
     public final void rule__RequiredDelegationConnector__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9830:1: ( rule__RequiredDelegationConnector__Group__4__Impl rule__RequiredDelegationConnector__Group__5 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9831:2: rule__RequiredDelegationConnector__Group__4__Impl rule__RequiredDelegationConnector__Group__5
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9127:1: ( rule__RequiredDelegationConnector__Group__4__Impl rule__RequiredDelegationConnector__Group__5 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9128:2: rule__RequiredDelegationConnector__Group__4__Impl rule__RequiredDelegationConnector__Group__5
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__4__Impl_in_rule__RequiredDelegationConnector__Group__419456);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__4__Impl_in_rule__RequiredDelegationConnector__Group__418088);
             rule__RequiredDelegationConnector__Group__4__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__5_in_rule__RequiredDelegationConnector__Group__419459);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__5_in_rule__RequiredDelegationConnector__Group__418091);
             rule__RequiredDelegationConnector__Group__5();
 
             state._fsp--;
@@ -25442,23 +23695,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__4__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9838:1: rule__RequiredDelegationConnector__Group__4__Impl : ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9135:1: rule__RequiredDelegationConnector__Group__4__Impl : ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) ) ;
     public final void rule__RequiredDelegationConnector__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9842:1: ( ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9843:1: ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9139:1: ( ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9140:1: ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9843:1: ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9844:1: ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9140:1: ( ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9141:1: ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 )
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssignment_4()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9845:1: ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9845:2: rule__RequiredDelegationConnector__AssemblyContextAssignment_4
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9142:1: ( rule__RequiredDelegationConnector__AssemblyContextAssignment_4 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9142:2: rule__RequiredDelegationConnector__AssemblyContextAssignment_4
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__AssemblyContextAssignment_4_in_rule__RequiredDelegationConnector__Group__4__Impl19486);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__AssemblyContextAssignment_4_in_rule__RequiredDelegationConnector__Group__4__Impl18118);
             rule__RequiredDelegationConnector__AssemblyContextAssignment_4();
 
             state._fsp--;
@@ -25489,21 +23742,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9855:1: rule__RequiredDelegationConnector__Group__5 : rule__RequiredDelegationConnector__Group__5__Impl rule__RequiredDelegationConnector__Group__6 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9152:1: rule__RequiredDelegationConnector__Group__5 : rule__RequiredDelegationConnector__Group__5__Impl rule__RequiredDelegationConnector__Group__6 ;
     public final void rule__RequiredDelegationConnector__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9859:1: ( rule__RequiredDelegationConnector__Group__5__Impl rule__RequiredDelegationConnector__Group__6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9860:2: rule__RequiredDelegationConnector__Group__5__Impl rule__RequiredDelegationConnector__Group__6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9156:1: ( rule__RequiredDelegationConnector__Group__5__Impl rule__RequiredDelegationConnector__Group__6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9157:2: rule__RequiredDelegationConnector__Group__5__Impl rule__RequiredDelegationConnector__Group__6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__5__Impl_in_rule__RequiredDelegationConnector__Group__519516);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__5__Impl_in_rule__RequiredDelegationConnector__Group__518148);
             rule__RequiredDelegationConnector__Group__5__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__6_in_rule__RequiredDelegationConnector__Group__519519);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__6_in_rule__RequiredDelegationConnector__Group__518151);
             rule__RequiredDelegationConnector__Group__6();
 
             state._fsp--;
@@ -25527,20 +23780,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__5__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9867:1: rule__RequiredDelegationConnector__Group__5__Impl : ( 'innerRequiredRole' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9164:1: rule__RequiredDelegationConnector__Group__5__Impl : ( 'innerRequiredRole' ) ;
     public final void rule__RequiredDelegationConnector__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9871:1: ( ( 'innerRequiredRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9872:1: ( 'innerRequiredRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9168:1: ( ( 'innerRequiredRole' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9169:1: ( 'innerRequiredRole' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9872:1: ( 'innerRequiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9873:1: 'innerRequiredRole'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9169:1: ( 'innerRequiredRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9170:1: 'innerRequiredRole'
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleKeyword_5()); 
-            match(input,68,FollowSets000.FOLLOW_68_in_rule__RequiredDelegationConnector__Group__5__Impl19547); 
+            match(input,65,FollowSets000.FOLLOW_65_in_rule__RequiredDelegationConnector__Group__5__Impl18179); 
              after(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleKeyword_5()); 
 
             }
@@ -25564,21 +23817,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9886:1: rule__RequiredDelegationConnector__Group__6 : rule__RequiredDelegationConnector__Group__6__Impl rule__RequiredDelegationConnector__Group__7 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9183:1: rule__RequiredDelegationConnector__Group__6 : rule__RequiredDelegationConnector__Group__6__Impl rule__RequiredDelegationConnector__Group__7 ;
     public final void rule__RequiredDelegationConnector__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9890:1: ( rule__RequiredDelegationConnector__Group__6__Impl rule__RequiredDelegationConnector__Group__7 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9891:2: rule__RequiredDelegationConnector__Group__6__Impl rule__RequiredDelegationConnector__Group__7
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9187:1: ( rule__RequiredDelegationConnector__Group__6__Impl rule__RequiredDelegationConnector__Group__7 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9188:2: rule__RequiredDelegationConnector__Group__6__Impl rule__RequiredDelegationConnector__Group__7
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__6__Impl_in_rule__RequiredDelegationConnector__Group__619578);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__6__Impl_in_rule__RequiredDelegationConnector__Group__618210);
             rule__RequiredDelegationConnector__Group__6__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__7_in_rule__RequiredDelegationConnector__Group__619581);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__7_in_rule__RequiredDelegationConnector__Group__618213);
             rule__RequiredDelegationConnector__Group__7();
 
             state._fsp--;
@@ -25602,23 +23855,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__6__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9898:1: rule__RequiredDelegationConnector__Group__6__Impl : ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9195:1: rule__RequiredDelegationConnector__Group__6__Impl : ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) ) ;
     public final void rule__RequiredDelegationConnector__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9902:1: ( ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9903:1: ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9199:1: ( ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9200:1: ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9903:1: ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9904:1: ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9200:1: ( ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9201:1: ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 )
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleAssignment_6()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9905:1: ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9905:2: rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9202:1: ( rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9202:2: rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6_in_rule__RequiredDelegationConnector__Group__6__Impl19608);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6_in_rule__RequiredDelegationConnector__Group__6__Impl18240);
             rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6();
 
             state._fsp--;
@@ -25649,21 +23902,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__7"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9915:1: rule__RequiredDelegationConnector__Group__7 : rule__RequiredDelegationConnector__Group__7__Impl rule__RequiredDelegationConnector__Group__8 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9212:1: rule__RequiredDelegationConnector__Group__7 : rule__RequiredDelegationConnector__Group__7__Impl rule__RequiredDelegationConnector__Group__8 ;
     public final void rule__RequiredDelegationConnector__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9919:1: ( rule__RequiredDelegationConnector__Group__7__Impl rule__RequiredDelegationConnector__Group__8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9920:2: rule__RequiredDelegationConnector__Group__7__Impl rule__RequiredDelegationConnector__Group__8
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9216:1: ( rule__RequiredDelegationConnector__Group__7__Impl rule__RequiredDelegationConnector__Group__8 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9217:2: rule__RequiredDelegationConnector__Group__7__Impl rule__RequiredDelegationConnector__Group__8
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__7__Impl_in_rule__RequiredDelegationConnector__Group__719638);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__7__Impl_in_rule__RequiredDelegationConnector__Group__718270);
             rule__RequiredDelegationConnector__Group__7__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__8_in_rule__RequiredDelegationConnector__Group__719641);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__8_in_rule__RequiredDelegationConnector__Group__718273);
             rule__RequiredDelegationConnector__Group__8();
 
             state._fsp--;
@@ -25687,20 +23940,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__7__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9927:1: rule__RequiredDelegationConnector__Group__7__Impl : ( 'outerRequiredRole' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9224:1: rule__RequiredDelegationConnector__Group__7__Impl : ( 'outerRequiredRole' ) ;
     public final void rule__RequiredDelegationConnector__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9931:1: ( ( 'outerRequiredRole' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9932:1: ( 'outerRequiredRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9228:1: ( ( 'outerRequiredRole' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9229:1: ( 'outerRequiredRole' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9932:1: ( 'outerRequiredRole' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9933:1: 'outerRequiredRole'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9229:1: ( 'outerRequiredRole' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9230:1: 'outerRequiredRole'
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleKeyword_7()); 
-            match(input,69,FollowSets000.FOLLOW_69_in_rule__RequiredDelegationConnector__Group__7__Impl19669); 
+            match(input,66,FollowSets000.FOLLOW_66_in_rule__RequiredDelegationConnector__Group__7__Impl18301); 
              after(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleKeyword_7()); 
 
             }
@@ -25724,21 +23977,21 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9946:1: rule__RequiredDelegationConnector__Group__8 : rule__RequiredDelegationConnector__Group__8__Impl rule__RequiredDelegationConnector__Group__9 ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9243:1: rule__RequiredDelegationConnector__Group__8 : rule__RequiredDelegationConnector__Group__8__Impl rule__RequiredDelegationConnector__Group__9 ;
     public final void rule__RequiredDelegationConnector__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9950:1: ( rule__RequiredDelegationConnector__Group__8__Impl rule__RequiredDelegationConnector__Group__9 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9951:2: rule__RequiredDelegationConnector__Group__8__Impl rule__RequiredDelegationConnector__Group__9
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9247:1: ( rule__RequiredDelegationConnector__Group__8__Impl rule__RequiredDelegationConnector__Group__9 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9248:2: rule__RequiredDelegationConnector__Group__8__Impl rule__RequiredDelegationConnector__Group__9
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__8__Impl_in_rule__RequiredDelegationConnector__Group__819700);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__8__Impl_in_rule__RequiredDelegationConnector__Group__818332);
             rule__RequiredDelegationConnector__Group__8__Impl();
 
             state._fsp--;
 
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__9_in_rule__RequiredDelegationConnector__Group__819703);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__9_in_rule__RequiredDelegationConnector__Group__818335);
             rule__RequiredDelegationConnector__Group__9();
 
             state._fsp--;
@@ -25762,23 +24015,23 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__8__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9958:1: rule__RequiredDelegationConnector__Group__8__Impl : ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9255:1: rule__RequiredDelegationConnector__Group__8__Impl : ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) ) ;
     public final void rule__RequiredDelegationConnector__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9962:1: ( ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9963:1: ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9259:1: ( ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9260:1: ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9963:1: ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9964:1: ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9260:1: ( ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9261:1: ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 )
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleAssignment_8()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9965:1: ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9965:2: rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9262:1: ( rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9262:2: rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8_in_rule__RequiredDelegationConnector__Group__8__Impl19730);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8_in_rule__RequiredDelegationConnector__Group__8__Impl18362);
             rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8();
 
             state._fsp--;
@@ -25809,16 +24062,16 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__9"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9975:1: rule__RequiredDelegationConnector__Group__9 : rule__RequiredDelegationConnector__Group__9__Impl ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9272:1: rule__RequiredDelegationConnector__Group__9 : rule__RequiredDelegationConnector__Group__9__Impl ;
     public final void rule__RequiredDelegationConnector__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9979:1: ( rule__RequiredDelegationConnector__Group__9__Impl )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9980:2: rule__RequiredDelegationConnector__Group__9__Impl
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9276:1: ( rule__RequiredDelegationConnector__Group__9__Impl )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9277:2: rule__RequiredDelegationConnector__Group__9__Impl
             {
-            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__9__Impl_in_rule__RequiredDelegationConnector__Group__919760);
+            pushFollow(FollowSets000.FOLLOW_rule__RequiredDelegationConnector__Group__9__Impl_in_rule__RequiredDelegationConnector__Group__918392);
             rule__RequiredDelegationConnector__Group__9__Impl();
 
             state._fsp--;
@@ -25842,20 +24095,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__Group__9__Impl"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9986:1: rule__RequiredDelegationConnector__Group__9__Impl : ( '}' ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9283:1: rule__RequiredDelegationConnector__Group__9__Impl : ( '}' ) ;
     public final void rule__RequiredDelegationConnector__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9990:1: ( ( '}' ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9991:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9287:1: ( ( '}' ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9288:1: ( '}' )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9991:1: ( '}' )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9992:1: '}'
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9288:1: ( '}' )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9289:1: '}'
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); 
-            match(input,21,FollowSets000.FOLLOW_21_in_rule__RequiredDelegationConnector__Group__9__Impl19788); 
+            match(input,21,FollowSets000.FOLLOW_21_in_rule__RequiredDelegationConnector__Group__9__Impl18420); 
              after(grammarAccess.getRequiredDelegationConnectorAccess().getRightCurlyBracketKeyword_9()); 
 
             }
@@ -25879,20 +24132,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Repository__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10026:1: rule__Repository__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9323:1: rule__Repository__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__Repository__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10030:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10031:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9327:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9328:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10031:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10032:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9328:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9329:1: ruleEString
             {
              before(grammarAccess.getRepositoryAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Repository__NameAssignment_119844);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Repository__NameAssignment_118476);
             ruleEString();
 
             state._fsp--;
@@ -25919,108 +24172,26 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
     // $ANTLR end "rule__Repository__NameAssignment_1"
 
 
-    // $ANTLR start "rule__Repository__DatatypesAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10041:1: rule__Repository__DatatypesAssignment_3_2 : ( ruleDataType ) ;
-    public final void rule__Repository__DatatypesAssignment_3_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10045:1: ( ( ruleDataType ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10046:1: ( ruleDataType )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10046:1: ( ruleDataType )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10047:1: ruleDataType
-            {
-             before(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleDataType_in_rule__Repository__DatatypesAssignment_3_219875);
-            ruleDataType();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_2_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__DatatypesAssignment_3_2"
-
-
-    // $ANTLR start "rule__Repository__DatatypesAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10056:1: rule__Repository__DatatypesAssignment_3_3_1 : ( ruleDataType ) ;
-    public final void rule__Repository__DatatypesAssignment_3_3_1() throws RecognitionException {
+    // $ANTLR start "rule__Repository__DatatypesAssignment_3_0"
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9338:1: rule__Repository__DatatypesAssignment_3_0 : ( ruleDataType ) ;
+    public final void rule__Repository__DatatypesAssignment_3_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10060:1: ( ( ruleDataType ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10061:1: ( ruleDataType )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9342:1: ( ( ruleDataType ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9343:1: ( ruleDataType )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10061:1: ( ruleDataType )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10062:1: ruleDataType
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9343:1: ( ruleDataType )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9344:1: ruleDataType
             {
-             before(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleDataType_in_rule__Repository__DatatypesAssignment_3_3_119906);
+             before(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_0_0()); 
+            pushFollow(FollowSets000.FOLLOW_ruleDataType_in_rule__Repository__DatatypesAssignment_3_018507);
             ruleDataType();
 
             state._fsp--;
 
-             after(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__DatatypesAssignment_3_3_1"
-
-
-    // $ANTLR start "rule__Repository__InterfacesAssignment_4_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10071:1: rule__Repository__InterfacesAssignment_4_2 : ( ruleInterface ) ;
-    public final void rule__Repository__InterfacesAssignment_4_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10075:1: ( ( ruleInterface ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10076:1: ( ruleInterface )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10076:1: ( ruleInterface )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10077:1: ruleInterface
-            {
-             before(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInterface_in_rule__Repository__InterfacesAssignment_4_219937);
-            ruleInterface();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_2_0()); 
+             after(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_0_0()); 
 
             }
 
@@ -26039,70 +24210,29 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
         }
         return ;
     }
-    // $ANTLR end "rule__Repository__InterfacesAssignment_4_2"
+    // $ANTLR end "rule__Repository__DatatypesAssignment_3_0"
 
 
-    // $ANTLR start "rule__Repository__InterfacesAssignment_4_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10086:1: rule__Repository__InterfacesAssignment_4_3_1 : ( ruleInterface ) ;
-    public final void rule__Repository__InterfacesAssignment_4_3_1() throws RecognitionException {
+    // $ANTLR start "rule__Repository__InterfacesAssignment_3_1"
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9353:1: rule__Repository__InterfacesAssignment_3_1 : ( ruleInterface ) ;
+    public final void rule__Repository__InterfacesAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10090:1: ( ( ruleInterface ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10091:1: ( ruleInterface )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9357:1: ( ( ruleInterface ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9358:1: ( ruleInterface )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10091:1: ( ruleInterface )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10092:1: ruleInterface
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9358:1: ( ruleInterface )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9359:1: ruleInterface
             {
-             before(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInterface_in_rule__Repository__InterfacesAssignment_4_3_119968);
+             before(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_3_1_0()); 
+            pushFollow(FollowSets000.FOLLOW_ruleInterface_in_rule__Repository__InterfacesAssignment_3_118538);
             ruleInterface();
 
             state._fsp--;
 
-             after(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_3_1_0()); 
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-
-            	restoreStackSize(stackSize);
-
-        }
-        return ;
-    }
-    // $ANTLR end "rule__Repository__InterfacesAssignment_4_3_1"
-
-
-    // $ANTLR start "rule__Repository__ComponentsAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10101:1: rule__Repository__ComponentsAssignment_5_2 : ( ruleRepositoryComponent ) ;
-    public final void rule__Repository__ComponentsAssignment_5_2() throws RecognitionException {
-
-        		int stackSize = keepStackSize();
-            
-        try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10105:1: ( ( ruleRepositoryComponent ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10106:1: ( ruleRepositoryComponent )
-            {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10106:1: ( ruleRepositoryComponent )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10107:1: ruleRepositoryComponent
-            {
-             before(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_rule__Repository__ComponentsAssignment_5_219999);
-            ruleRepositoryComponent();
-
-            state._fsp--;
-
-             after(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); 
+             after(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_3_1_0()); 
 
             }
 
@@ -26121,29 +24251,29 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
         }
         return ;
     }
-    // $ANTLR end "rule__Repository__ComponentsAssignment_5_2"
+    // $ANTLR end "rule__Repository__InterfacesAssignment_3_1"
 
 
-    // $ANTLR start "rule__Repository__ComponentsAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10116:1: rule__Repository__ComponentsAssignment_5_3_1 : ( ruleRepositoryComponent ) ;
-    public final void rule__Repository__ComponentsAssignment_5_3_1() throws RecognitionException {
+    // $ANTLR start "rule__Repository__ComponentsAssignment_3_2"
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9368:1: rule__Repository__ComponentsAssignment_3_2 : ( ruleRepositoryComponent ) ;
+    public final void rule__Repository__ComponentsAssignment_3_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10120:1: ( ( ruleRepositoryComponent ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10121:1: ( ruleRepositoryComponent )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9372:1: ( ( ruleRepositoryComponent ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9373:1: ( ruleRepositoryComponent )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10121:1: ( ruleRepositoryComponent )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10122:1: ruleRepositoryComponent
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9373:1: ( ruleRepositoryComponent )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9374:1: ruleRepositoryComponent
             {
-             before(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_rule__Repository__ComponentsAssignment_5_3_120030);
+             before(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_3_2_0()); 
+            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_rule__Repository__ComponentsAssignment_3_218569);
             ruleRepositoryComponent();
 
             state._fsp--;
 
-             after(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); 
+             after(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_3_2_0()); 
 
             }
 
@@ -26162,24 +24292,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
         }
         return ;
     }
-    // $ANTLR end "rule__Repository__ComponentsAssignment_5_3_1"
+    // $ANTLR end "rule__Repository__ComponentsAssignment_3_2"
 
 
     // $ANTLR start "rule__Interface__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10131:1: rule__Interface__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9383:1: rule__Interface__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__Interface__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10135:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10136:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9387:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9388:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10136:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10137:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9388:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9389:1: ruleEString
             {
              before(grammarAccess.getInterfaceAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Interface__NameAssignment_120061);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Interface__NameAssignment_118600);
             ruleEString();
 
             state._fsp--;
@@ -26207,24 +24337,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__ParentInterfacesAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10146:1: rule__Interface__ParentInterfacesAssignment_3_2 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9398:1: rule__Interface__ParentInterfacesAssignment_3_2 : ( ( ruleEString ) ) ;
     public final void rule__Interface__ParentInterfacesAssignment_3_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10150:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10151:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9402:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9403:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10151:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10152:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9403:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9404:1: ( ruleEString )
             {
              before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10153:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10154:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9405:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9406:1: ruleEString
             {
              before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceEStringParserRuleCall_3_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_220096);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_218635);
             ruleEString();
 
             state._fsp--;
@@ -26256,24 +24386,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__ParentInterfacesAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10165:1: rule__Interface__ParentInterfacesAssignment_3_3_1 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9417:1: rule__Interface__ParentInterfacesAssignment_3_3_1 : ( ( ruleEString ) ) ;
     public final void rule__Interface__ParentInterfacesAssignment_3_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10169:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10170:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9421:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9422:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10170:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10171:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9422:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9423:1: ( ruleEString )
             {
              before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10172:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10173:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9424:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9425:1: ruleEString
             {
              before(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceEStringParserRuleCall_3_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_3_120135);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_3_118674);
             ruleEString();
 
             state._fsp--;
@@ -26305,20 +24435,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__SignaturesAssignment_4_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10184:1: rule__Interface__SignaturesAssignment_4_2 : ( ruleSignature ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9436:1: rule__Interface__SignaturesAssignment_4_2 : ( ruleSignature ) ;
     public final void rule__Interface__SignaturesAssignment_4_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10188:1: ( ( ruleSignature ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10189:1: ( ruleSignature )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9440:1: ( ( ruleSignature ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9441:1: ( ruleSignature )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10189:1: ( ruleSignature )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10190:1: ruleSignature
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9441:1: ( ruleSignature )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9442:1: ruleSignature
             {
              before(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_220170);
+            pushFollow(FollowSets000.FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_218709);
             ruleSignature();
 
             state._fsp--;
@@ -26346,20 +24476,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Interface__SignaturesAssignment_4_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10199:1: rule__Interface__SignaturesAssignment_4_3_1 : ( ruleSignature ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9451:1: rule__Interface__SignaturesAssignment_4_3_1 : ( ruleSignature ) ;
     public final void rule__Interface__SignaturesAssignment_4_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10203:1: ( ( ruleSignature ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10204:1: ( ruleSignature )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9455:1: ( ( ruleSignature ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9456:1: ( ruleSignature )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10204:1: ( ruleSignature )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10205:1: ruleSignature
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9456:1: ( ruleSignature )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9457:1: ruleSignature
             {
              before(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_3_120201);
+            pushFollow(FollowSets000.FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_3_118740);
             ruleSignature();
 
             state._fsp--;
@@ -26387,20 +24517,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10214:1: rule__RepositoryComponent_Impl__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9466:1: rule__RepositoryComponent_Impl__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__RepositoryComponent_Impl__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10218:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10219:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9470:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9471:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10219:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10220:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9471:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9472:1: ruleEString
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__NameAssignment_120232);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__NameAssignment_118771);
             ruleEString();
 
             state._fsp--;
@@ -26428,24 +24558,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__RelationshipAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10229:1: rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9481:1: rule__RepositoryComponent_Impl__RelationshipAssignment_3_2 : ( ( ruleEString ) ) ;
     public final void rule__RepositoryComponent_Impl__RelationshipAssignment_3_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10233:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10234:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9485:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9486:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10234:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10235:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9486:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9487:1: ( ruleEString )
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10236:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10237:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9488:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9489:1: ruleEString
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipEStringParserRuleCall_3_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_220267);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_218806);
             ruleEString();
 
             state._fsp--;
@@ -26477,24 +24607,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10248:1: rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9500:1: rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1 : ( ( ruleEString ) ) ;
     public final void rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10252:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10253:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9504:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9505:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10253:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10254:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9505:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9506:1: ( ruleEString )
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10255:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10256:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9507:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9508:1: ruleEString
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipEStringParserRuleCall_3_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_120306);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_118845);
             ruleEString();
 
             state._fsp--;
@@ -26526,20 +24656,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10267:1: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 : ( ruleProvidedRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9519:1: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2 : ( ruleProvidedRole ) ;
     public final void rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10271:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10272:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9523:1: ( ( ruleProvidedRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9524:1: ( ruleProvidedRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10272:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10273:1: ruleProvidedRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9524:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9525:1: ruleProvidedRole
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_220341);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_218880);
             ruleProvidedRole();
 
             state._fsp--;
@@ -26567,20 +24697,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10282:1: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 : ( ruleProvidedRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9534:1: rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1 : ( ruleProvidedRole ) ;
     public final void rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10286:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10287:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9538:1: ( ( ruleProvidedRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9539:1: ( ruleProvidedRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10287:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10288:1: ruleProvidedRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9539:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9540:1: ruleProvidedRole
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_120372);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_118911);
             ruleProvidedRole();
 
             state._fsp--;
@@ -26608,20 +24738,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10297:1: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 : ( ruleRequiredRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9549:1: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2 : ( ruleRequiredRole ) ;
     public final void rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10301:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10302:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9553:1: ( ( ruleRequiredRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9554:1: ( ruleRequiredRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10302:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10303:1: ruleRequiredRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9554:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9555:1: ruleRequiredRole
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_220403);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_218942);
             ruleRequiredRole();
 
             state._fsp--;
@@ -26649,20 +24779,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10312:1: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 : ( ruleRequiredRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9564:1: rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1 : ( ruleRequiredRole ) ;
     public final void rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10316:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10317:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9568:1: ( ( ruleRequiredRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9569:1: ( ruleRequiredRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10317:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10318:1: ruleRequiredRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9569:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9570:1: ruleRequiredRole
             {
              before(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_120434);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_118973);
             ruleRequiredRole();
 
             state._fsp--;
@@ -26690,20 +24820,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10327:1: rule__CollectionDataType__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9579:1: rule__CollectionDataType__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__CollectionDataType__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10331:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10332:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9583:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9584:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10332:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10333:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9584:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9585:1: ruleEString
             {
              before(grammarAccess.getCollectionDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CollectionDataType__NameAssignment_120465);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CollectionDataType__NameAssignment_119004);
             ruleEString();
 
             state._fsp--;
@@ -26731,24 +24861,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CollectionDataType__InnerTypeAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10342:1: rule__CollectionDataType__InnerTypeAssignment_4 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9594:1: rule__CollectionDataType__InnerTypeAssignment_4 : ( ( ruleEString ) ) ;
     public final void rule__CollectionDataType__InnerTypeAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10346:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10347:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9598:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9599:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10347:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10348:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9599:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9600:1: ( ruleEString )
             {
              before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10349:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10350:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9601:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9602:1: ruleEString
             {
              before(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CollectionDataType__InnerTypeAssignment_420500);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CollectionDataType__InnerTypeAssignment_419039);
             ruleEString();
 
             state._fsp--;
@@ -26780,20 +24910,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10361:1: rule__CompositeDataType__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9613:1: rule__CompositeDataType__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__CompositeDataType__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10365:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10366:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9617:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9618:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10366:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10367:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9618:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9619:1: ruleEString
             {
              before(grammarAccess.getCompositeDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeDataType__NameAssignment_120535);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeDataType__NameAssignment_119074);
             ruleEString();
 
             state._fsp--;
@@ -26821,24 +24951,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__ParentTypesAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10376:1: rule__CompositeDataType__ParentTypesAssignment_3_2 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9628:1: rule__CompositeDataType__ParentTypesAssignment_3_2 : ( ( ruleEString ) ) ;
     public final void rule__CompositeDataType__ParentTypesAssignment_3_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10380:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10381:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9632:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9633:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10381:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10382:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9633:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9634:1: ( ruleEString )
             {
              before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10383:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10384:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9635:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9636:1: ruleEString
             {
              before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeEStringParserRuleCall_3_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_220570);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_219109);
             ruleEString();
 
             state._fsp--;
@@ -26870,24 +25000,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__ParentTypesAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10395:1: rule__CompositeDataType__ParentTypesAssignment_3_3_1 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9647:1: rule__CompositeDataType__ParentTypesAssignment_3_3_1 : ( ( ruleEString ) ) ;
     public final void rule__CompositeDataType__ParentTypesAssignment_3_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10399:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10400:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9651:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9652:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10400:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10401:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9652:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9653:1: ( ruleEString )
             {
              before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10402:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10403:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9654:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9655:1: ruleEString
             {
              before(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeEStringParserRuleCall_3_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_3_120609);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_3_119148);
             ruleEString();
 
             state._fsp--;
@@ -26919,20 +25049,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__InnerDeclarationsAssignment_4_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10414:1: rule__CompositeDataType__InnerDeclarationsAssignment_4_2 : ( ruleInnerDeclaration ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9666:1: rule__CompositeDataType__InnerDeclarationsAssignment_4_2 : ( ruleInnerDeclaration ) ;
     public final void rule__CompositeDataType__InnerDeclarationsAssignment_4_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10418:1: ( ( ruleInnerDeclaration ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10419:1: ( ruleInnerDeclaration )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9670:1: ( ( ruleInnerDeclaration ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9671:1: ( ruleInnerDeclaration )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10419:1: ( ruleInnerDeclaration )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10420:1: ruleInnerDeclaration
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9671:1: ( ruleInnerDeclaration )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9672:1: ruleInnerDeclaration
             {
              before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_220644);
+            pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_219183);
             ruleInnerDeclaration();
 
             state._fsp--;
@@ -26960,20 +25090,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10429:1: rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 : ( ruleInnerDeclaration ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9681:1: rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1 : ( ruleInnerDeclaration ) ;
     public final void rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10433:1: ( ( ruleInnerDeclaration ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10434:1: ( ruleInnerDeclaration )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9685:1: ( ( ruleInnerDeclaration ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9686:1: ( ruleInnerDeclaration )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10434:1: ( ruleInnerDeclaration )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10435:1: ruleInnerDeclaration
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9686:1: ( ruleInnerDeclaration )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9687:1: ruleInnerDeclaration
             {
              before(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_120675);
+            pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_119214);
             ruleInnerDeclaration();
 
             state._fsp--;
@@ -27001,20 +25131,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__TypeAssignment_3"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10444:1: rule__PrimitiveDataType__TypeAssignment_3 : ( rulePrimitiveTypeEnum ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9696:1: rule__PrimitiveDataType__TypeAssignment_3 : ( rulePrimitiveTypeEnum ) ;
     public final void rule__PrimitiveDataType__TypeAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10448:1: ( ( rulePrimitiveTypeEnum ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10449:1: ( rulePrimitiveTypeEnum )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9700:1: ( ( rulePrimitiveTypeEnum ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9701:1: ( rulePrimitiveTypeEnum )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10449:1: ( rulePrimitiveTypeEnum )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10450:1: rulePrimitiveTypeEnum
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9701:1: ( rulePrimitiveTypeEnum )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9702:1: rulePrimitiveTypeEnum
             {
              before(grammarAccess.getPrimitiveDataTypeAccess().getTypePrimitiveTypeEnumEnumRuleCall_3_0()); 
-            pushFollow(FollowSets000.FOLLOW_rulePrimitiveTypeEnum_in_rule__PrimitiveDataType__TypeAssignment_320706);
+            pushFollow(FollowSets000.FOLLOW_rulePrimitiveTypeEnum_in_rule__PrimitiveDataType__TypeAssignment_319245);
             rulePrimitiveTypeEnum();
 
             state._fsp--;
@@ -27042,20 +25172,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__PrimitiveDataType__NameAssignment_5"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10459:1: rule__PrimitiveDataType__NameAssignment_5 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9711:1: rule__PrimitiveDataType__NameAssignment_5 : ( ruleEString ) ;
     public final void rule__PrimitiveDataType__NameAssignment_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10463:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10464:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9715:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9716:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10464:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10465:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9716:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9717:1: ruleEString
             {
              before(grammarAccess.getPrimitiveDataTypeAccess().getNameEStringParserRuleCall_5_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__PrimitiveDataType__NameAssignment_520737);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__PrimitiveDataType__NameAssignment_519276);
             ruleEString();
 
             state._fsp--;
@@ -27083,20 +25213,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10474:1: rule__InnerDeclaration__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9726:1: rule__InnerDeclaration__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__InnerDeclaration__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10478:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10479:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9730:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9731:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10479:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10480:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9731:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9732:1: ruleEString
             {
              before(grammarAccess.getInnerDeclarationAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__InnerDeclaration__NameAssignment_120768);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__InnerDeclaration__NameAssignment_119307);
             ruleEString();
 
             state._fsp--;
@@ -27124,24 +25254,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__InnerDeclaration__DataTypeAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10489:1: rule__InnerDeclaration__DataTypeAssignment_4 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9741:1: rule__InnerDeclaration__DataTypeAssignment_4 : ( ( ruleEString ) ) ;
     public final void rule__InnerDeclaration__DataTypeAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10493:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10494:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9745:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9746:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10494:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10495:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9746:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9747:1: ( ruleEString )
             {
              before(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10496:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10497:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9748:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9749:1: ruleEString
             {
              before(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__InnerDeclaration__DataTypeAssignment_420803);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__InnerDeclaration__DataTypeAssignment_419342);
             ruleEString();
 
             state._fsp--;
@@ -27173,24 +25303,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__ReturnTypeAssignment_0_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10508:1: rule__Signature__ReturnTypeAssignment_0_0 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9760:1: rule__Signature__ReturnTypeAssignment_0_0 : ( ( ruleEString ) ) ;
     public final void rule__Signature__ReturnTypeAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10512:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10513:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9764:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9765:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10513:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10514:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9765:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9766:1: ( ruleEString )
             {
              before(grammarAccess.getSignatureAccess().getReturnTypeDataTypeCrossReference_0_0_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10515:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10516:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9767:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9768:1: ruleEString
             {
              before(grammarAccess.getSignatureAccess().getReturnTypeDataTypeEStringParserRuleCall_0_0_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Signature__ReturnTypeAssignment_0_020842);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Signature__ReturnTypeAssignment_0_019381);
             ruleEString();
 
             state._fsp--;
@@ -27222,20 +25352,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10527:1: rule__Signature__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9779:1: rule__Signature__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__Signature__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10531:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10532:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9783:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9784:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10532:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10533:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9784:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9785:1: ruleEString
             {
              before(grammarAccess.getSignatureAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Signature__NameAssignment_120877);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Signature__NameAssignment_119416);
             ruleEString();
 
             state._fsp--;
@@ -27263,20 +25393,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__ParametersAssignment_3_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10542:1: rule__Signature__ParametersAssignment_3_0 : ( ruleParameter ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9794:1: rule__Signature__ParametersAssignment_3_0 : ( ruleParameter ) ;
     public final void rule__Signature__ParametersAssignment_3_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10546:1: ( ( ruleParameter ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10547:1: ( ruleParameter )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9798:1: ( ( ruleParameter ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9799:1: ( ruleParameter )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10547:1: ( ruleParameter )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10548:1: ruleParameter
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9799:1: ( ruleParameter )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9800:1: ruleParameter
             {
              before(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_0_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_020908);
+            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_019447);
             ruleParameter();
 
             state._fsp--;
@@ -27304,20 +25434,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Signature__ParametersAssignment_3_1_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10557:1: rule__Signature__ParametersAssignment_3_1_1 : ( ruleParameter ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9809:1: rule__Signature__ParametersAssignment_3_1_1 : ( ruleParameter ) ;
     public final void rule__Signature__ParametersAssignment_3_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10561:1: ( ( ruleParameter ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10562:1: ( ruleParameter )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9813:1: ( ( ruleParameter ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9814:1: ( ruleParameter )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10562:1: ( ruleParameter )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10563:1: ruleParameter
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9814:1: ( ruleParameter )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9815:1: ruleParameter
             {
              before(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_1_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_1_120939);
+            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_1_119478);
             ruleParameter();
 
             state._fsp--;
@@ -27345,24 +25475,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Parameter__DataTypeAssignment_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10572:1: rule__Parameter__DataTypeAssignment_0 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9824:1: rule__Parameter__DataTypeAssignment_0 : ( ( ruleEString ) ) ;
     public final void rule__Parameter__DataTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10576:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10577:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9828:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9829:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10577:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10578:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9829:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9830:1: ( ruleEString )
             {
              before(grammarAccess.getParameterAccess().getDataTypeDataTypeCrossReference_0_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10579:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10580:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9831:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9832:1: ruleEString
             {
              before(grammarAccess.getParameterAccess().getDataTypeDataTypeEStringParserRuleCall_0_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Parameter__DataTypeAssignment_020974);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Parameter__DataTypeAssignment_019513);
             ruleEString();
 
             state._fsp--;
@@ -27394,20 +25524,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__Parameter__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10591:1: rule__Parameter__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9843:1: rule__Parameter__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__Parameter__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10595:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10596:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9847:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9848:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10596:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10597:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9848:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9849:1: ruleEString
             {
              before(grammarAccess.getParameterAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Parameter__NameAssignment_121009);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__Parameter__NameAssignment_119548);
             ruleEString();
 
             state._fsp--;
@@ -27435,24 +25565,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedRole__InterfaceAssignment_2_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10606:1: rule__ProvidedRole__InterfaceAssignment_2_0 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9858:1: rule__ProvidedRole__InterfaceAssignment_2_0 : ( ( ruleEString ) ) ;
     public final void rule__ProvidedRole__InterfaceAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10610:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10611:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9862:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9863:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10611:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10612:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9863:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9864:1: ( ruleEString )
             {
              before(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceCrossReference_2_0_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10613:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10614:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9865:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9866:1: ruleEString
             {
              before(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceEStringParserRuleCall_2_0_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedRole__InterfaceAssignment_2_021044);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedRole__InterfaceAssignment_2_019583);
             ruleEString();
 
             state._fsp--;
@@ -27484,24 +25614,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredRole__InterfaceAssignment_2_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10625:1: rule__RequiredRole__InterfaceAssignment_2_0 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9877:1: rule__RequiredRole__InterfaceAssignment_2_0 : ( ( ruleEString ) ) ;
     public final void rule__RequiredRole__InterfaceAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10629:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10630:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9881:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9882:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10630:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10631:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9882:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9883:1: ( ruleEString )
             {
              before(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceCrossReference_2_0_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10632:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10633:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9884:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9885:1: ruleEString
             {
              before(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceEStringParserRuleCall_2_0_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredRole__InterfaceAssignment_2_021083);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredRole__InterfaceAssignment_2_019622);
             ruleEString();
 
             state._fsp--;
@@ -27533,20 +25663,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10644:1: rule__BasicComponent__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9896:1: rule__BasicComponent__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__BasicComponent__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10648:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10649:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9900:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9901:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10649:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10650:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9901:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9902:1: ruleEString
             {
              before(grammarAccess.getBasicComponentAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__BasicComponent__NameAssignment_121118);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__BasicComponent__NameAssignment_119657);
             ruleEString();
 
             state._fsp--;
@@ -27574,20 +25704,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__ProvidedRolesAssignment_2_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10659:1: rule__BasicComponent__ProvidedRolesAssignment_2_0 : ( ruleProvidedRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9911:1: rule__BasicComponent__ProvidedRolesAssignment_2_0 : ( ruleProvidedRole ) ;
     public final void rule__BasicComponent__ProvidedRolesAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10663:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10664:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9915:1: ( ( ruleProvidedRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9916:1: ( ruleProvidedRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10664:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10665:1: ruleProvidedRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9916:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9917:1: ruleProvidedRole
             {
              before(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_021149);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_019688);
             ruleProvidedRole();
 
             state._fsp--;
@@ -27615,20 +25745,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__ProvidedRolesAssignment_2_1_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10674:1: rule__BasicComponent__ProvidedRolesAssignment_2_1_1 : ( ruleProvidedRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9926:1: rule__BasicComponent__ProvidedRolesAssignment_2_1_1 : ( ruleProvidedRole ) ;
     public final void rule__BasicComponent__ProvidedRolesAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10678:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10679:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9930:1: ( ( ruleProvidedRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9931:1: ( ruleProvidedRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10679:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10680:1: ruleProvidedRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9931:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9932:1: ruleProvidedRole
             {
              before(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_1_121180);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_1_119719);
             ruleProvidedRole();
 
             state._fsp--;
@@ -27656,20 +25786,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__RequiredRolesAssignment_3_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10689:1: rule__BasicComponent__RequiredRolesAssignment_3_0 : ( ruleRequiredRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9941:1: rule__BasicComponent__RequiredRolesAssignment_3_0 : ( ruleRequiredRole ) ;
     public final void rule__BasicComponent__RequiredRolesAssignment_3_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10693:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10694:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9945:1: ( ( ruleRequiredRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9946:1: ( ruleRequiredRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10694:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10695:1: ruleRequiredRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9946:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9947:1: ruleRequiredRole
             {
              before(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_021211);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_019750);
             ruleRequiredRole();
 
             state._fsp--;
@@ -27697,20 +25827,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__RequiredRolesAssignment_3_1_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10704:1: rule__BasicComponent__RequiredRolesAssignment_3_1_1 : ( ruleRequiredRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9956:1: rule__BasicComponent__RequiredRolesAssignment_3_1_1 : ( ruleRequiredRole ) ;
     public final void rule__BasicComponent__RequiredRolesAssignment_3_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10708:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10709:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9960:1: ( ( ruleRequiredRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9961:1: ( ruleRequiredRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10709:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10710:1: ruleRequiredRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9961:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9962:1: ruleRequiredRole
             {
              before(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_1_121242);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_1_119781);
             ruleRequiredRole();
 
             state._fsp--;
@@ -27738,24 +25868,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__RelationshipAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10719:1: rule__BasicComponent__RelationshipAssignment_5_2 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9971:1: rule__BasicComponent__RelationshipAssignment_5_2 : ( ( ruleEString ) ) ;
     public final void rule__BasicComponent__RelationshipAssignment_5_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10723:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10724:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9975:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9976:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10724:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10725:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9976:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9977:1: ( ruleEString )
             {
              before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10726:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10727:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9978:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9979:1: ruleEString
             {
              before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_221277);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_219816);
             ruleEString();
 
             state._fsp--;
@@ -27787,24 +25917,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__BasicComponent__RelationshipAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10738:1: rule__BasicComponent__RelationshipAssignment_5_3_1 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9990:1: rule__BasicComponent__RelationshipAssignment_5_3_1 : ( ( ruleEString ) ) ;
     public final void rule__BasicComponent__RelationshipAssignment_5_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10742:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10743:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9994:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9995:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10743:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10744:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9995:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9996:1: ( ruleEString )
             {
              before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10745:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10746:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9997:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:9998:1: ruleEString
             {
              before(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_3_121316);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_3_119855);
             ruleEString();
 
             state._fsp--;
@@ -27836,20 +25966,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10757:1: rule__CompositeComponent__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10009:1: rule__CompositeComponent__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__CompositeComponent__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10761:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10762:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10013:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10014:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10762:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10763:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10014:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10015:1: ruleEString
             {
              before(grammarAccess.getCompositeComponentAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeComponent__NameAssignment_121351);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeComponent__NameAssignment_119890);
             ruleEString();
 
             state._fsp--;
@@ -27877,20 +26007,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__ProvidedRolesAssignment_2_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10772:1: rule__CompositeComponent__ProvidedRolesAssignment_2_0 : ( ruleProvidedRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10024:1: rule__CompositeComponent__ProvidedRolesAssignment_2_0 : ( ruleProvidedRole ) ;
     public final void rule__CompositeComponent__ProvidedRolesAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10776:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10777:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10028:1: ( ( ruleProvidedRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10029:1: ( ruleProvidedRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10777:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10778:1: ruleProvidedRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10029:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10030:1: ruleProvidedRole
             {
              before(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_021382);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_019921);
             ruleProvidedRole();
 
             state._fsp--;
@@ -27918,20 +26048,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__ProvidedRolesAssignment_2_1_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10787:1: rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 : ( ruleProvidedRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10039:1: rule__CompositeComponent__ProvidedRolesAssignment_2_1_1 : ( ruleProvidedRole ) ;
     public final void rule__CompositeComponent__ProvidedRolesAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10791:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10792:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10043:1: ( ( ruleProvidedRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10044:1: ( ruleProvidedRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10792:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10793:1: ruleProvidedRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10044:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10045:1: ruleProvidedRole
             {
              before(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_1_121413);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_1_119952);
             ruleProvidedRole();
 
             state._fsp--;
@@ -27959,20 +26089,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__RequiredRolesAssignment_3_0"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10802:1: rule__CompositeComponent__RequiredRolesAssignment_3_0 : ( ruleRequiredRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10054:1: rule__CompositeComponent__RequiredRolesAssignment_3_0 : ( ruleRequiredRole ) ;
     public final void rule__CompositeComponent__RequiredRolesAssignment_3_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10806:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10807:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10058:1: ( ( ruleRequiredRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10059:1: ( ruleRequiredRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10807:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10808:1: ruleRequiredRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10059:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10060:1: ruleRequiredRole
             {
              before(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_021444);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_019983);
             ruleRequiredRole();
 
             state._fsp--;
@@ -28000,20 +26130,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__RequiredRolesAssignment_3_1_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10817:1: rule__CompositeComponent__RequiredRolesAssignment_3_1_1 : ( ruleRequiredRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10069:1: rule__CompositeComponent__RequiredRolesAssignment_3_1_1 : ( ruleRequiredRole ) ;
     public final void rule__CompositeComponent__RequiredRolesAssignment_3_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10821:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10822:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10073:1: ( ( ruleRequiredRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10074:1: ( ruleRequiredRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10822:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10823:1: ruleRequiredRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10074:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10075:1: ruleRequiredRole
             {
              before(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_1_121475);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_1_120014);
             ruleRequiredRole();
 
             state._fsp--;
@@ -28041,24 +26171,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__RelationshipAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10832:1: rule__CompositeComponent__RelationshipAssignment_5_2 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10084:1: rule__CompositeComponent__RelationshipAssignment_5_2 : ( ( ruleEString ) ) ;
     public final void rule__CompositeComponent__RelationshipAssignment_5_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10836:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10837:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10088:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10089:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10837:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10838:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10089:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10090:1: ( ruleEString )
             {
              before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10839:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10840:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10091:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10092:1: ruleEString
             {
              before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_221510);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_220049);
             ruleEString();
 
             state._fsp--;
@@ -28090,24 +26220,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__RelationshipAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10851:1: rule__CompositeComponent__RelationshipAssignment_5_3_1 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10103:1: rule__CompositeComponent__RelationshipAssignment_5_3_1 : ( ( ruleEString ) ) ;
     public final void rule__CompositeComponent__RelationshipAssignment_5_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10855:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10856:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10107:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10108:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10856:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10857:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10108:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10109:1: ( ruleEString )
             {
              before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10858:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10859:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10110:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10111:1: ruleEString
             {
              before(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_3_121549);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_3_120088);
             ruleEString();
 
             state._fsp--;
@@ -28139,20 +26269,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__CompositeComponent__AssemblyAssignment_6_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10870:1: rule__CompositeComponent__AssemblyAssignment_6_1 : ( ruleComposedStructureAssembly ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10122:1: rule__CompositeComponent__AssemblyAssignment_6_1 : ( ruleComposedStructureAssembly ) ;
     public final void rule__CompositeComponent__AssemblyAssignment_6_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10874:1: ( ( ruleComposedStructureAssembly ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10875:1: ( ruleComposedStructureAssembly )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10126:1: ( ( ruleComposedStructureAssembly ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10127:1: ( ruleComposedStructureAssembly )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10875:1: ( ruleComposedStructureAssembly )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10876:1: ruleComposedStructureAssembly
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10127:1: ( ruleComposedStructureAssembly )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10128:1: ruleComposedStructureAssembly
             {
              before(grammarAccess.getCompositeComponentAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_rule__CompositeComponent__AssemblyAssignment_6_121584);
+            pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_rule__CompositeComponent__AssemblyAssignment_6_120123);
             ruleComposedStructureAssembly();
 
             state._fsp--;
@@ -28180,20 +26310,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10885:1: rule__SubSystem__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10137:1: rule__SubSystem__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__SubSystem__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10889:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10890:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10141:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10142:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10890:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10891:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10142:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10143:1: ruleEString
             {
              before(grammarAccess.getSubSystemAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__SubSystem__NameAssignment_121615);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__SubSystem__NameAssignment_120154);
             ruleEString();
 
             state._fsp--;
@@ -28221,20 +26351,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__ProvidedRolesAssignment_2_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10900:1: rule__SubSystem__ProvidedRolesAssignment_2_2 : ( ruleProvidedRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10152:1: rule__SubSystem__ProvidedRolesAssignment_2_2 : ( ruleProvidedRole ) ;
     public final void rule__SubSystem__ProvidedRolesAssignment_2_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10904:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10905:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10156:1: ( ( ruleProvidedRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10157:1: ( ruleProvidedRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10905:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10906:1: ruleProvidedRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10157:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10158:1: ruleProvidedRole
             {
              before(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_221646);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_220185);
             ruleProvidedRole();
 
             state._fsp--;
@@ -28262,20 +26392,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__ProvidedRolesAssignment_2_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10915:1: rule__SubSystem__ProvidedRolesAssignment_2_3_1 : ( ruleProvidedRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10167:1: rule__SubSystem__ProvidedRolesAssignment_2_3_1 : ( ruleProvidedRole ) ;
     public final void rule__SubSystem__ProvidedRolesAssignment_2_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10919:1: ( ( ruleProvidedRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10920:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10171:1: ( ( ruleProvidedRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10172:1: ( ruleProvidedRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10920:1: ( ruleProvidedRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10921:1: ruleProvidedRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10172:1: ( ruleProvidedRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10173:1: ruleProvidedRole
             {
              before(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_3_121677);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_3_120216);
             ruleProvidedRole();
 
             state._fsp--;
@@ -28303,20 +26433,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__RequiredRolesAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10930:1: rule__SubSystem__RequiredRolesAssignment_3_2 : ( ruleRequiredRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10182:1: rule__SubSystem__RequiredRolesAssignment_3_2 : ( ruleRequiredRole ) ;
     public final void rule__SubSystem__RequiredRolesAssignment_3_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10934:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10935:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10186:1: ( ( ruleRequiredRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10187:1: ( ruleRequiredRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10935:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10936:1: ruleRequiredRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10187:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10188:1: ruleRequiredRole
             {
              before(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_221708);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_220247);
             ruleRequiredRole();
 
             state._fsp--;
@@ -28344,20 +26474,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__RequiredRolesAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10945:1: rule__SubSystem__RequiredRolesAssignment_3_3_1 : ( ruleRequiredRole ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10197:1: rule__SubSystem__RequiredRolesAssignment_3_3_1 : ( ruleRequiredRole ) ;
     public final void rule__SubSystem__RequiredRolesAssignment_3_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10949:1: ( ( ruleRequiredRole ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10950:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10201:1: ( ( ruleRequiredRole ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10202:1: ( ruleRequiredRole )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10950:1: ( ruleRequiredRole )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10951:1: ruleRequiredRole
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10202:1: ( ruleRequiredRole )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10203:1: ruleRequiredRole
             {
              before(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_3_121739);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_3_120278);
             ruleRequiredRole();
 
             state._fsp--;
@@ -28385,24 +26515,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__RelationshipAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10960:1: rule__SubSystem__RelationshipAssignment_5_2 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10212:1: rule__SubSystem__RelationshipAssignment_5_2 : ( ( ruleEString ) ) ;
     public final void rule__SubSystem__RelationshipAssignment_5_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10964:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10965:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10216:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10217:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10965:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10966:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10217:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10218:1: ( ruleEString )
             {
              before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10967:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10968:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10219:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10220:1: ruleEString
             {
              before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipEStringParserRuleCall_5_2_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_221774);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_220313);
             ruleEString();
 
             state._fsp--;
@@ -28434,24 +26564,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__RelationshipAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10979:1: rule__SubSystem__RelationshipAssignment_5_3_1 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10231:1: rule__SubSystem__RelationshipAssignment_5_3_1 : ( ( ruleEString ) ) ;
     public final void rule__SubSystem__RelationshipAssignment_5_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10983:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10984:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10235:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10236:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10984:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10985:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10236:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10237:1: ( ruleEString )
             {
              before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10986:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10987:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10238:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10239:1: ruleEString
             {
              before(grammarAccess.getSubSystemAccess().getRelationshipRelationshipEStringParserRuleCall_5_3_1_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_3_121813);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_3_120352);
             ruleEString();
 
             state._fsp--;
@@ -28483,20 +26613,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__SubSystem__AssemblyAssignment_6_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10998:1: rule__SubSystem__AssemblyAssignment_6_1 : ( ruleComposedStructureAssembly ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10250:1: rule__SubSystem__AssemblyAssignment_6_1 : ( ruleComposedStructureAssembly ) ;
     public final void rule__SubSystem__AssemblyAssignment_6_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11002:1: ( ( ruleComposedStructureAssembly ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11003:1: ( ruleComposedStructureAssembly )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10254:1: ( ( ruleComposedStructureAssembly ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10255:1: ( ruleComposedStructureAssembly )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11003:1: ( ruleComposedStructureAssembly )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11004:1: ruleComposedStructureAssembly
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10255:1: ( ruleComposedStructureAssembly )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10256:1: ruleComposedStructureAssembly
             {
              before(grammarAccess.getSubSystemAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_rule__SubSystem__AssemblyAssignment_6_121848);
+            pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_rule__SubSystem__AssemblyAssignment_6_120387);
             ruleComposedStructureAssembly();
 
             state._fsp--;
@@ -28524,20 +26654,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11013:1: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 : ( ruleAssemblyContext ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10265:1: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2 : ( ruleAssemblyContext ) ;
     public final void rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11017:1: ( ( ruleAssemblyContext ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11018:1: ( ruleAssemblyContext )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10269:1: ( ( ruleAssemblyContext ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10270:1: ( ruleAssemblyContext )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11018:1: ( ruleAssemblyContext )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11019:1: ruleAssemblyContext
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10270:1: ( ruleAssemblyContext )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10271:1: ruleAssemblyContext
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_221879);
+            pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_220418);
             ruleAssemblyContext();
 
             state._fsp--;
@@ -28565,20 +26695,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11028:1: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 : ( ruleAssemblyContext ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10280:1: rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1 : ( ruleAssemblyContext ) ;
     public final void rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11032:1: ( ( ruleAssemblyContext ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11033:1: ( ruleAssemblyContext )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10284:1: ( ( ruleAssemblyContext ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10285:1: ( ruleAssemblyContext )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11033:1: ( ruleAssemblyContext )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11034:1: ruleAssemblyContext
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10285:1: ( ruleAssemblyContext )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10286:1: ruleAssemblyContext
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_121910);
+            pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_120449);
             ruleAssemblyContext();
 
             state._fsp--;
@@ -28606,20 +26736,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11043:1: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 : ( ruleAssemblyConnector ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10295:1: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2 : ( ruleAssemblyConnector ) ;
     public final void rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11047:1: ( ( ruleAssemblyConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11048:1: ( ruleAssemblyConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10299:1: ( ( ruleAssemblyConnector ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10300:1: ( ruleAssemblyConnector )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11048:1: ( ruleAssemblyConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11049:1: ruleAssemblyConnector
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10300:1: ( ruleAssemblyConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10301:1: ruleAssemblyConnector
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_221941);
+            pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_220480);
             ruleAssemblyConnector();
 
             state._fsp--;
@@ -28647,20 +26777,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11058:1: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 : ( ruleAssemblyConnector ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10310:1: rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1 : ( ruleAssemblyConnector ) ;
     public final void rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11062:1: ( ( ruleAssemblyConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11063:1: ( ruleAssemblyConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10314:1: ( ( ruleAssemblyConnector ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10315:1: ( ruleAssemblyConnector )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11063:1: ( ruleAssemblyConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11064:1: ruleAssemblyConnector
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10315:1: ( ruleAssemblyConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10316:1: ruleAssemblyConnector
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_121972);
+            pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_120511);
             ruleAssemblyConnector();
 
             state._fsp--;
@@ -28688,20 +26818,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11073:1: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 : ( ruleProvidedDelegationConnector ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10325:1: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2 : ( ruleProvidedDelegationConnector ) ;
     public final void rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11077:1: ( ( ruleProvidedDelegationConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11078:1: ( ruleProvidedDelegationConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10329:1: ( ( ruleProvidedDelegationConnector ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10330:1: ( ruleProvidedDelegationConnector )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11078:1: ( ruleProvidedDelegationConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11079:1: ruleProvidedDelegationConnector
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10330:1: ( ruleProvidedDelegationConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10331:1: ruleProvidedDelegationConnector
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_222003);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_220542);
             ruleProvidedDelegationConnector();
 
             state._fsp--;
@@ -28729,20 +26859,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11088:1: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 : ( ruleProvidedDelegationConnector ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10340:1: rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1 : ( ruleProvidedDelegationConnector ) ;
     public final void rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11092:1: ( ( ruleProvidedDelegationConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11093:1: ( ruleProvidedDelegationConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10344:1: ( ( ruleProvidedDelegationConnector ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10345:1: ( ruleProvidedDelegationConnector )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11093:1: ( ruleProvidedDelegationConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11094:1: ruleProvidedDelegationConnector
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10345:1: ( ruleProvidedDelegationConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10346:1: ruleProvidedDelegationConnector
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_122034);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_120573);
             ruleProvidedDelegationConnector();
 
             state._fsp--;
@@ -28770,20 +26900,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11103:1: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 : ( ruleRequiredDelegationConnector ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10355:1: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2 : ( ruleRequiredDelegationConnector ) ;
     public final void rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11107:1: ( ( ruleRequiredDelegationConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11108:1: ( ruleRequiredDelegationConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10359:1: ( ( ruleRequiredDelegationConnector ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10360:1: ( ruleRequiredDelegationConnector )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11108:1: ( ruleRequiredDelegationConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11109:1: ruleRequiredDelegationConnector
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10360:1: ( ruleRequiredDelegationConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10361:1: ruleRequiredDelegationConnector
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_222065);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_220604);
             ruleRequiredDelegationConnector();
 
             state._fsp--;
@@ -28811,20 +26941,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11118:1: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 : ( ruleRequiredDelegationConnector ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10370:1: rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1 : ( ruleRequiredDelegationConnector ) ;
     public final void rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11122:1: ( ( ruleRequiredDelegationConnector ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11123:1: ( ruleRequiredDelegationConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10374:1: ( ( ruleRequiredDelegationConnector ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10375:1: ( ruleRequiredDelegationConnector )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11123:1: ( ruleRequiredDelegationConnector )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11124:1: ruleRequiredDelegationConnector
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10375:1: ( ruleRequiredDelegationConnector )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10376:1: ruleRequiredDelegationConnector
             {
              before(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_122096);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_120635);
             ruleRequiredDelegationConnector();
 
             state._fsp--;
@@ -28852,20 +26982,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11133:1: rule__AssemblyContext__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10385:1: rule__AssemblyContext__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__AssemblyContext__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11137:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11138:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10389:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10390:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11138:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11139:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10390:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10391:1: ruleEString
             {
              before(grammarAccess.getAssemblyContextAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyContext__NameAssignment_122127);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyContext__NameAssignment_120666);
             ruleEString();
 
             state._fsp--;
@@ -28893,24 +27023,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyContext__EncapsulatedComponentAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11148:1: rule__AssemblyContext__EncapsulatedComponentAssignment_4 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10400:1: rule__AssemblyContext__EncapsulatedComponentAssignment_4 : ( ( ruleEString ) ) ;
     public final void rule__AssemblyContext__EncapsulatedComponentAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11152:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11153:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10404:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10405:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11153:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11154:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10405:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10406:1: ( ruleEString )
             {
              before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11155:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11156:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10407:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10408:1: ruleEString
             {
              before(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyContext__EncapsulatedComponentAssignment_422162);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyContext__EncapsulatedComponentAssignment_420701);
             ruleEString();
 
             state._fsp--;
@@ -28942,20 +27072,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11167:1: rule__AssemblyConnector__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10419:1: rule__AssemblyConnector__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__AssemblyConnector__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11171:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11172:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10423:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10424:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11172:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11173:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10424:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10425:1: ruleEString
             {
              before(grammarAccess.getAssemblyConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__NameAssignment_122197);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__NameAssignment_120736);
             ruleEString();
 
             state._fsp--;
@@ -28983,24 +27113,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__RequiredRoleAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11182:1: rule__AssemblyConnector__RequiredRoleAssignment_4 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10434:1: rule__AssemblyConnector__RequiredRoleAssignment_4 : ( ( ruleEString ) ) ;
     public final void rule__AssemblyConnector__RequiredRoleAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11186:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11187:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10438:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10439:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11187:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11188:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10439:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10440:1: ( ruleEString )
             {
              before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11189:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11190:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10441:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10442:1: ruleEString
             {
              before(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiredRoleAssignment_422232);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiredRoleAssignment_420771);
             ruleEString();
 
             state._fsp--;
@@ -29032,24 +27162,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__ProvidedRoleAssignment_6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11201:1: rule__AssemblyConnector__ProvidedRoleAssignment_6 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10453:1: rule__AssemblyConnector__ProvidedRoleAssignment_6 : ( ( ruleEString ) ) ;
     public final void rule__AssemblyConnector__ProvidedRoleAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11205:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11206:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10457:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10458:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11206:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11207:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10458:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10459:1: ( ruleEString )
             {
              before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleCrossReference_6_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11208:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11209:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10460:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10461:1: ruleEString
             {
              before(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidedRoleAssignment_622271);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidedRoleAssignment_620810);
             ruleEString();
 
             state._fsp--;
@@ -29081,24 +27211,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11220:1: rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10472:1: rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8 : ( ( ruleEString ) ) ;
     public final void rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11224:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11225:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10476:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10477:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11225:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11226:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10477:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10478:1: ( ruleEString )
             {
              before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextCrossReference_8_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11227:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11228:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10479:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10480:1: ruleEString
             {
              before(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextEStringParserRuleCall_8_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_822310);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_820849);
             ruleEString();
 
             state._fsp--;
@@ -29130,24 +27260,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__AssemblyConnector__RequiringAssemblyContextAssignment_10"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11239:1: rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10491:1: rule__AssemblyConnector__RequiringAssemblyContextAssignment_10 : ( ( ruleEString ) ) ;
     public final void rule__AssemblyConnector__RequiringAssemblyContextAssignment_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11243:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11244:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10495:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10496:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11244:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11245:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10496:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10497:1: ( ruleEString )
             {
              before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextCrossReference_10_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11246:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11247:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10498:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10499:1: ruleEString
             {
              before(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextEStringParserRuleCall_10_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiringAssemblyContextAssignment_1022349);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiringAssemblyContextAssignment_1020888);
             ruleEString();
 
             state._fsp--;
@@ -29179,20 +27309,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11258:1: rule__ProvidedDelegationConnector__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10510:1: rule__ProvidedDelegationConnector__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__ProvidedDelegationConnector__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11262:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11263:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10514:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10515:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11263:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11264:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10515:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10516:1: ruleEString
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__NameAssignment_122384);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__NameAssignment_120923);
             ruleEString();
 
             state._fsp--;
@@ -29220,24 +27350,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__AssemblyContextAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11273:1: rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10525:1: rule__ProvidedDelegationConnector__AssemblyContextAssignment_4 : ( ( ruleEString ) ) ;
     public final void rule__ProvidedDelegationConnector__AssemblyContextAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11277:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11278:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10529:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10530:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11278:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11279:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10530:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10531:1: ( ruleEString )
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11280:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11281:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10532:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10533:1: ruleEString
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__AssemblyContextAssignment_422419);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__AssemblyContextAssignment_420958);
             ruleEString();
 
             state._fsp--;
@@ -29269,24 +27399,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11292:1: rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10544:1: rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6 : ( ( ruleEString ) ) ;
     public final void rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11296:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11297:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10548:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10549:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11297:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11298:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10549:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10550:1: ( ruleEString )
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleCrossReference_6_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11299:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11300:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10551:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10552:1: ruleEString
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleEStringParserRuleCall_6_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_622458);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_620997);
             ruleEString();
 
             state._fsp--;
@@ -29318,24 +27448,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11311:1: rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10563:1: rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8 : ( ( ruleEString ) ) ;
     public final void rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11315:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11316:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10567:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10568:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11316:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11317:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10568:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10569:1: ( ruleEString )
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleCrossReference_8_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11318:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11319:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10570:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10571:1: ruleEString
             {
              before(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleEStringParserRuleCall_8_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_822497);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_821036);
             ruleEString();
 
             state._fsp--;
@@ -29367,20 +27497,20 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__NameAssignment_1"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11330:1: rule__RequiredDelegationConnector__NameAssignment_1 : ( ruleEString ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10582:1: rule__RequiredDelegationConnector__NameAssignment_1 : ( ruleEString ) ;
     public final void rule__RequiredDelegationConnector__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11334:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11335:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10586:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10587:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11335:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11336:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10587:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10588:1: ruleEString
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__NameAssignment_122532);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__NameAssignment_121071);
             ruleEString();
 
             state._fsp--;
@@ -29408,24 +27538,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__AssemblyContextAssignment_4"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11345:1: rule__RequiredDelegationConnector__AssemblyContextAssignment_4 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10597:1: rule__RequiredDelegationConnector__AssemblyContextAssignment_4 : ( ( ruleEString ) ) ;
     public final void rule__RequiredDelegationConnector__AssemblyContextAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11349:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11350:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10601:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10602:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11350:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11351:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10602:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10603:1: ( ruleEString )
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11352:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11353:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10604:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10605:1: ruleEString
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextEStringParserRuleCall_4_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__AssemblyContextAssignment_422567);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__AssemblyContextAssignment_421106);
             ruleEString();
 
             state._fsp--;
@@ -29457,24 +27587,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11364:1: rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10616:1: rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6 : ( ( ruleEString ) ) ;
     public final void rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11368:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11369:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10620:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10621:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11369:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11370:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10621:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10622:1: ( ruleEString )
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleCrossReference_6_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11371:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11372:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10623:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10624:1: ruleEString
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleEStringParserRuleCall_6_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_622606);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_621145);
             ruleEString();
 
             state._fsp--;
@@ -29506,24 +27636,24 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
 
 
     // $ANTLR start "rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8"
-    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11383:1: rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 : ( ( ruleEString ) ) ;
+    // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10635:1: rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8 : ( ( ruleEString ) ) ;
     public final void rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11387:1: ( ( ( ruleEString ) ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11388:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10639:1: ( ( ( ruleEString ) ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10640:1: ( ( ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11388:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11389:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10640:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10641:1: ( ruleEString )
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleCrossReference_8_0()); 
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11390:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:11391:1: ruleEString
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10642:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/contentassist/antlr/internal/InternalMyDslTest.g:10643:1: ruleEString
             {
              before(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleEStringParserRuleCall_8_0_1()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_822645);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_821184);
             ruleEString();
 
             state._fsp--;
@@ -29627,898 +27757,835 @@ public class InternalMyDslTestParser extends AbstractInternalContentAssistParser
         public static final BitSet FOLLOW_EOF_in_entryRuleRequiredDelegationConnector1328 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__0_in_ruleRequiredDelegationConnector1354 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_rule__PrimitiveTypeEnum__Alternatives_in_rulePrimitiveTypeEnum1391 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCollectionDataType_in_rule__DataType__Alternatives1426 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeDataType_in_rule__DataType__Alternatives1443 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rulePrimitiveDataType_in_rule__DataType__Alternatives1460 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_Impl_in_rule__RepositoryComponent__Alternatives1492 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleBasicComponent_in_rule__RepositoryComponent__Alternatives1509 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeComponent_in_rule__RepositoryComponent__Alternatives1526 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSubSystem_in_rule__RepositoryComponent__Alternatives1543 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_STRING_in_rule__EString__Alternatives1575 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_ID_in_rule__EString__Alternatives1592 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__ReturnTypeAssignment_0_0_in_rule__Signature__Alternatives_01624 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_11_in_rule__Signature__Alternatives_01643 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_12_in_rule__PrimitiveTypeEnum__Alternatives1678 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_13_in_rule__PrimitiveTypeEnum__Alternatives1699 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_14_in_rule__PrimitiveTypeEnum__Alternatives1720 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_15_in_rule__PrimitiveTypeEnum__Alternatives1741 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_16_in_rule__PrimitiveTypeEnum__Alternatives1762 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_17_in_rule__PrimitiveTypeEnum__Alternatives1783 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_18_in_rule__PrimitiveTypeEnum__Alternatives1804 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__0__Impl_in_rule__Repository__Group__01837 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Repository__Group__1_in_rule__Repository__Group__01840 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_19_in_rule__Repository__Group__0__Impl1868 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__1__Impl_in_rule__Repository__Group__11899 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Repository__Group__2_in_rule__Repository__Group__11902 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__NameAssignment_1_in_rule__Repository__Group__1__Impl1929 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__2__Impl_in_rule__Repository__Group__21959 = new BitSet(new long[]{0x0000000003600000L});
-        public static final BitSet FOLLOW_rule__Repository__Group__3_in_rule__Repository__Group__21962 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Repository__Group__2__Impl1990 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__3__Impl_in_rule__Repository__Group__32021 = new BitSet(new long[]{0x0000000003600000L});
-        public static final BitSet FOLLOW_rule__Repository__Group__4_in_rule__Repository__Group__32024 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__0_in_rule__Repository__Group__3__Impl2051 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__4__Impl_in_rule__Repository__Group__42082 = new BitSet(new long[]{0x0000000003600000L});
-        public static final BitSet FOLLOW_rule__Repository__Group__5_in_rule__Repository__Group__42085 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__0_in_rule__Repository__Group__4__Impl2112 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__5__Impl_in_rule__Repository__Group__52143 = new BitSet(new long[]{0x0000000003600000L});
-        public static final BitSet FOLLOW_rule__Repository__Group__6_in_rule__Repository__Group__52146 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__0_in_rule__Repository__Group__5__Impl2173 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group__6__Impl_in_rule__Repository__Group__62204 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Repository__Group__6__Impl2232 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__0__Impl_in_rule__Repository__Group_3__02277 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__1_in_rule__Repository__Group_3__02280 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_22_in_rule__Repository__Group_3__0__Impl2308 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__1__Impl_in_rule__Repository__Group_3__12339 = new BitSet(new long[]{0x0000012800000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__2_in_rule__Repository__Group_3__12342 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Repository__Group_3__1__Impl2370 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__2__Impl_in_rule__Repository__Group_3__22401 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__3_in_rule__Repository__Group_3__22404 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__DatatypesAssignment_3_2_in_rule__Repository__Group_3__2__Impl2431 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__3__Impl_in_rule__Repository__Group_3__32461 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__4_in_rule__Repository__Group_3__32464 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3_3__0_in_rule__Repository__Group_3__3__Impl2491 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3__4__Impl_in_rule__Repository__Group_3__42522 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Repository__Group_3__4__Impl2550 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3_3__0__Impl_in_rule__Repository__Group_3_3__02591 = new BitSet(new long[]{0x0000012800000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3_3__1_in_rule__Repository__Group_3_3__02594 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Repository__Group_3_3__0__Impl2622 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_3_3__1__Impl_in_rule__Repository__Group_3_3__12653 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__DatatypesAssignment_3_3_1_in_rule__Repository__Group_3_3__1__Impl2680 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__0__Impl_in_rule__Repository__Group_4__02714 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__1_in_rule__Repository__Group_4__02717 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_24_in_rule__Repository__Group_4__0__Impl2745 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__1__Impl_in_rule__Repository__Group_4__12776 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__2_in_rule__Repository__Group_4__12779 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Repository__Group_4__1__Impl2807 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__2__Impl_in_rule__Repository__Group_4__22838 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__3_in_rule__Repository__Group_4__22841 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__InterfacesAssignment_4_2_in_rule__Repository__Group_4__2__Impl2868 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__3__Impl_in_rule__Repository__Group_4__32898 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__4_in_rule__Repository__Group_4__32901 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4_3__0_in_rule__Repository__Group_4__3__Impl2928 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4__4__Impl_in_rule__Repository__Group_4__42959 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Repository__Group_4__4__Impl2987 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4_3__0__Impl_in_rule__Repository__Group_4_3__03028 = new BitSet(new long[]{0x0000000004000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4_3__1_in_rule__Repository__Group_4_3__03031 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Repository__Group_4_3__0__Impl3059 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_4_3__1__Impl_in_rule__Repository__Group_4_3__13090 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__InterfacesAssignment_4_3_1_in_rule__Repository__Group_4_3__1__Impl3117 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__0__Impl_in_rule__Repository__Group_5__03151 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__1_in_rule__Repository__Group_5__03154 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_25_in_rule__Repository__Group_5__0__Impl3182 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__1__Impl_in_rule__Repository__Group_5__13213 = new BitSet(new long[]{0x0005800080000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__2_in_rule__Repository__Group_5__13216 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Repository__Group_5__1__Impl3244 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__2__Impl_in_rule__Repository__Group_5__23275 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__3_in_rule__Repository__Group_5__23278 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__ComponentsAssignment_5_2_in_rule__Repository__Group_5__2__Impl3305 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__3__Impl_in_rule__Repository__Group_5__33335 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__4_in_rule__Repository__Group_5__33338 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5_3__0_in_rule__Repository__Group_5__3__Impl3365 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5__4__Impl_in_rule__Repository__Group_5__43396 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Repository__Group_5__4__Impl3424 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5_3__0__Impl_in_rule__Repository__Group_5_3__03465 = new BitSet(new long[]{0x0005800080000000L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5_3__1_in_rule__Repository__Group_5_3__03468 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Repository__Group_5_3__0__Impl3496 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__Group_5_3__1__Impl_in_rule__Repository__Group_5_3__13527 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Repository__ComponentsAssignment_5_3_1_in_rule__Repository__Group_5_3__1__Impl3554 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__0__Impl_in_rule__Interface__Group__03588 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Interface__Group__1_in_rule__Interface__Group__03591 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_26_in_rule__Interface__Group__0__Impl3619 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__1__Impl_in_rule__Interface__Group__13650 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Interface__Group__2_in_rule__Interface__Group__13653 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__NameAssignment_1_in_rule__Interface__Group__1__Impl3680 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__2__Impl_in_rule__Interface__Group__23710 = new BitSet(new long[]{0x0000000048200000L});
-        public static final BitSet FOLLOW_rule__Interface__Group__3_in_rule__Interface__Group__23713 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Interface__Group__2__Impl3741 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__3__Impl_in_rule__Interface__Group__33772 = new BitSet(new long[]{0x0000000048200000L});
-        public static final BitSet FOLLOW_rule__Interface__Group__4_in_rule__Interface__Group__33775 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__0_in_rule__Interface__Group__3__Impl3802 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__4__Impl_in_rule__Interface__Group__43833 = new BitSet(new long[]{0x0000000048200000L});
-        public static final BitSet FOLLOW_rule__Interface__Group__5_in_rule__Interface__Group__43836 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__0_in_rule__Interface__Group__4__Impl3863 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group__5__Impl_in_rule__Interface__Group__53894 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Interface__Group__5__Impl3922 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__0__Impl_in_rule__Interface__Group_3__03965 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__1_in_rule__Interface__Group_3__03968 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_27_in_rule__Interface__Group_3__0__Impl3996 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__1__Impl_in_rule__Interface__Group_3__14027 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__2_in_rule__Interface__Group_3__14030 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_28_in_rule__Interface__Group_3__1__Impl4058 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__2__Impl_in_rule__Interface__Group_3__24089 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__3_in_rule__Interface__Group_3__24092 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__ParentInterfacesAssignment_3_2_in_rule__Interface__Group_3__2__Impl4119 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__3__Impl_in_rule__Interface__Group_3__34149 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__4_in_rule__Interface__Group_3__34152 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3_3__0_in_rule__Interface__Group_3__3__Impl4179 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3__4__Impl_in_rule__Interface__Group_3__44210 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_29_in_rule__Interface__Group_3__4__Impl4238 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3_3__0__Impl_in_rule__Interface__Group_3_3__04279 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3_3__1_in_rule__Interface__Group_3_3__04282 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Interface__Group_3_3__0__Impl4310 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_3_3__1__Impl_in_rule__Interface__Group_3_3__14341 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__ParentInterfacesAssignment_3_3_1_in_rule__Interface__Group_3_3__1__Impl4368 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__0__Impl_in_rule__Interface__Group_4__04402 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__1_in_rule__Interface__Group_4__04405 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_30_in_rule__Interface__Group_4__0__Impl4433 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__1__Impl_in_rule__Interface__Group_4__14464 = new BitSet(new long[]{0x0000000000000830L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__2_in_rule__Interface__Group_4__14467 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__Interface__Group_4__1__Impl4495 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__2__Impl_in_rule__Interface__Group_4__24526 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__3_in_rule__Interface__Group_4__24529 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__SignaturesAssignment_4_2_in_rule__Interface__Group_4__2__Impl4556 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__3__Impl_in_rule__Interface__Group_4__34586 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__4_in_rule__Interface__Group_4__34589 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4_3__0_in_rule__Interface__Group_4__3__Impl4616 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4__4__Impl_in_rule__Interface__Group_4__44647 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__Interface__Group_4__4__Impl4675 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4_3__0__Impl_in_rule__Interface__Group_4_3__04716 = new BitSet(new long[]{0x0000000000000830L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4_3__1_in_rule__Interface__Group_4_3__04719 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Interface__Group_4_3__0__Impl4747 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__Group_4_3__1__Impl_in_rule__Interface__Group_4_3__14778 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Interface__SignaturesAssignment_4_3_1_in_rule__Interface__Group_4_3__1__Impl4805 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__0__Impl_in_rule__RepositoryComponent_Impl__Group__04839 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__1_in_rule__RepositoryComponent_Impl__Group__04842 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_31_in_rule__RepositoryComponent_Impl__Group__0__Impl4870 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__1__Impl_in_rule__RepositoryComponent_Impl__Group__14901 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__2_in_rule__RepositoryComponent_Impl__Group__14904 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__NameAssignment_1_in_rule__RepositoryComponent_Impl__Group__1__Impl4931 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__2__Impl_in_rule__RepositoryComponent_Impl__Group__24961 = new BitSet(new long[]{0x0000000700200000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__3_in_rule__RepositoryComponent_Impl__Group__24964 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__RepositoryComponent_Impl__Group__2__Impl4992 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__3__Impl_in_rule__RepositoryComponent_Impl__Group__35023 = new BitSet(new long[]{0x0000000700200000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__4_in_rule__RepositoryComponent_Impl__Group__35026 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__0_in_rule__RepositoryComponent_Impl__Group__3__Impl5053 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__4__Impl_in_rule__RepositoryComponent_Impl__Group__45084 = new BitSet(new long[]{0x0000000700200000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__5_in_rule__RepositoryComponent_Impl__Group__45087 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__0_in_rule__RepositoryComponent_Impl__Group__4__Impl5114 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__5__Impl_in_rule__RepositoryComponent_Impl__Group__55145 = new BitSet(new long[]{0x0000000700200000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__6_in_rule__RepositoryComponent_Impl__Group__55148 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__0_in_rule__RepositoryComponent_Impl__Group__5__Impl5175 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__6__Impl_in_rule__RepositoryComponent_Impl__Group__65206 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__RepositoryComponent_Impl__Group__6__Impl5234 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3__05279 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__1_in_rule__RepositoryComponent_Impl__Group_3__05282 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_32_in_rule__RepositoryComponent_Impl__Group_3__0__Impl5310 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3__15341 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__2_in_rule__RepositoryComponent_Impl__Group_3__15344 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_28_in_rule__RepositoryComponent_Impl__Group_3__1__Impl5372 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__2__Impl_in_rule__RepositoryComponent_Impl__Group_3__25403 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__3_in_rule__RepositoryComponent_Impl__Group_3__25406 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_2_in_rule__RepositoryComponent_Impl__Group_3__2__Impl5433 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__3__Impl_in_rule__RepositoryComponent_Impl__Group_3__35463 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__4_in_rule__RepositoryComponent_Impl__Group_3__35466 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0_in_rule__RepositoryComponent_Impl__Group_3__3__Impl5493 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__4__Impl_in_rule__RepositoryComponent_Impl__Group_3__45524 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_29_in_rule__RepositoryComponent_Impl__Group_3__4__Impl5552 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__05593 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1_in_rule__RepositoryComponent_Impl__Group_3_3__05596 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_3_3__0__Impl5624 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__15655 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1_in_rule__RepositoryComponent_Impl__Group_3_3__1__Impl5682 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__0__Impl_in_rule__RepositoryComponent_Impl__Group_4__05716 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__1_in_rule__RepositoryComponent_Impl__Group_4__05719 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_33_in_rule__RepositoryComponent_Impl__Group_4__0__Impl5747 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__1__Impl_in_rule__RepositoryComponent_Impl__Group_4__15778 = new BitSet(new long[]{0x0000200000000000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__2_in_rule__RepositoryComponent_Impl__Group_4__15781 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_4__1__Impl5809 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__2__Impl_in_rule__RepositoryComponent_Impl__Group_4__25840 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__3_in_rule__RepositoryComponent_Impl__Group_4__25843 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2_in_rule__RepositoryComponent_Impl__Group_4__2__Impl5870 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__3__Impl_in_rule__RepositoryComponent_Impl__Group_4__35900 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__4_in_rule__RepositoryComponent_Impl__Group_4__35903 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0_in_rule__RepositoryComponent_Impl__Group_4__3__Impl5930 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__4__Impl_in_rule__RepositoryComponent_Impl__Group_4__45961 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_4__4__Impl5989 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__06030 = new BitSet(new long[]{0x0000200000000000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1_in_rule__RepositoryComponent_Impl__Group_4_3__06033 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_4_3__0__Impl6061 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__16092 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1_in_rule__RepositoryComponent_Impl__Group_4_3__1__Impl6119 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__0__Impl_in_rule__RepositoryComponent_Impl__Group_5__06153 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__1_in_rule__RepositoryComponent_Impl__Group_5__06156 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_34_in_rule__RepositoryComponent_Impl__Group_5__0__Impl6184 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__1__Impl_in_rule__RepositoryComponent_Impl__Group_5__16215 = new BitSet(new long[]{0x0000400000000000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__2_in_rule__RepositoryComponent_Impl__Group_5__16218 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_5__1__Impl6246 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__2__Impl_in_rule__RepositoryComponent_Impl__Group_5__26277 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__3_in_rule__RepositoryComponent_Impl__Group_5__26280 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2_in_rule__RepositoryComponent_Impl__Group_5__2__Impl6307 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__3__Impl_in_rule__RepositoryComponent_Impl__Group_5__36337 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__4_in_rule__RepositoryComponent_Impl__Group_5__36340 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0_in_rule__RepositoryComponent_Impl__Group_5__3__Impl6367 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__4__Impl_in_rule__RepositoryComponent_Impl__Group_5__46398 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_5__4__Impl6426 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__06467 = new BitSet(new long[]{0x0000400000000000L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1_in_rule__RepositoryComponent_Impl__Group_5_3__06470 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__RepositoryComponent_Impl__Group_5_3__0__Impl6498 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__16529 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1_in_rule__RepositoryComponent_Impl__Group_5_3__1__Impl6556 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__0__Impl_in_rule__CollectionDataType__Group__06590 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__1_in_rule__CollectionDataType__Group__06593 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_35_in_rule__CollectionDataType__Group__0__Impl6621 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__1__Impl_in_rule__CollectionDataType__Group__16652 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__2_in_rule__CollectionDataType__Group__16655 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__NameAssignment_1_in_rule__CollectionDataType__Group__1__Impl6682 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__2__Impl_in_rule__CollectionDataType__Group__26712 = new BitSet(new long[]{0x0000001000000000L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__3_in_rule__CollectionDataType__Group__26715 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__CollectionDataType__Group__2__Impl6743 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__3__Impl_in_rule__CollectionDataType__Group__36774 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__4_in_rule__CollectionDataType__Group__36777 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_36_in_rule__CollectionDataType__Group__3__Impl6805 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__4__Impl_in_rule__CollectionDataType__Group__46836 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__5_in_rule__CollectionDataType__Group__46839 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__InnerTypeAssignment_4_in_rule__CollectionDataType__Group__4__Impl6866 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CollectionDataType__Group__5__Impl_in_rule__CollectionDataType__Group__56896 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__CollectionDataType__Group__5__Impl6924 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__0__Impl_in_rule__CompositeDataType__Group__06967 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__1_in_rule__CompositeDataType__Group__06970 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_37_in_rule__CompositeDataType__Group__0__Impl6998 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__1__Impl_in_rule__CompositeDataType__Group__17029 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__2_in_rule__CompositeDataType__Group__17032 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__NameAssignment_1_in_rule__CompositeDataType__Group__1__Impl7059 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__2__Impl_in_rule__CompositeDataType__Group__27089 = new BitSet(new long[]{0x000000C000200000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__3_in_rule__CompositeDataType__Group__27092 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__CompositeDataType__Group__2__Impl7120 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__3__Impl_in_rule__CompositeDataType__Group__37151 = new BitSet(new long[]{0x000000C000200000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__4_in_rule__CompositeDataType__Group__37154 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__0_in_rule__CompositeDataType__Group__3__Impl7181 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__4__Impl_in_rule__CompositeDataType__Group__47212 = new BitSet(new long[]{0x000000C000200000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__5_in_rule__CompositeDataType__Group__47215 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__0_in_rule__CompositeDataType__Group__4__Impl7242 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group__5__Impl_in_rule__CompositeDataType__Group__57273 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__CompositeDataType__Group__5__Impl7301 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__0__Impl_in_rule__CompositeDataType__Group_3__07344 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__1_in_rule__CompositeDataType__Group_3__07347 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_38_in_rule__CompositeDataType__Group_3__0__Impl7375 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__1__Impl_in_rule__CompositeDataType__Group_3__17406 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__2_in_rule__CompositeDataType__Group_3__17409 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_28_in_rule__CompositeDataType__Group_3__1__Impl7437 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__2__Impl_in_rule__CompositeDataType__Group_3__27468 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__3_in_rule__CompositeDataType__Group_3__27471 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_2_in_rule__CompositeDataType__Group_3__2__Impl7498 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__3__Impl_in_rule__CompositeDataType__Group_3__37528 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__4_in_rule__CompositeDataType__Group_3__37531 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__0_in_rule__CompositeDataType__Group_3__3__Impl7558 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__4__Impl_in_rule__CompositeDataType__Group_3__47589 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_29_in_rule__CompositeDataType__Group_3__4__Impl7617 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__0__Impl_in_rule__CompositeDataType__Group_3_3__07658 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__1_in_rule__CompositeDataType__Group_3_3__07661 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__CompositeDataType__Group_3_3__0__Impl7689 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__1__Impl_in_rule__CompositeDataType__Group_3_3__17720 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_3_1_in_rule__CompositeDataType__Group_3_3__1__Impl7747 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__0__Impl_in_rule__CompositeDataType__Group_4__07781 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__1_in_rule__CompositeDataType__Group_4__07784 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_39_in_rule__CompositeDataType__Group_4__0__Impl7812 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__1__Impl_in_rule__CompositeDataType__Group_4__17843 = new BitSet(new long[]{0x0000080000000000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__2_in_rule__CompositeDataType__Group_4__17846 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__CompositeDataType__Group_4__1__Impl7874 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__2__Impl_in_rule__CompositeDataType__Group_4__27905 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__3_in_rule__CompositeDataType__Group_4__27908 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_2_in_rule__CompositeDataType__Group_4__2__Impl7935 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__3__Impl_in_rule__CompositeDataType__Group_4__37965 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__4_in_rule__CompositeDataType__Group_4__37968 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__0_in_rule__CompositeDataType__Group_4__3__Impl7995 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__4__Impl_in_rule__CompositeDataType__Group_4__48026 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__CompositeDataType__Group_4__4__Impl8054 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__0__Impl_in_rule__CompositeDataType__Group_4_3__08095 = new BitSet(new long[]{0x0000080000000000L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__1_in_rule__CompositeDataType__Group_4_3__08098 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__CompositeDataType__Group_4_3__0__Impl8126 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__1__Impl_in_rule__CompositeDataType__Group_4_3__18157 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1_in_rule__CompositeDataType__Group_4_3__1__Impl8184 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__0__Impl_in_rule__PrimitiveDataType__Group__08218 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__1_in_rule__PrimitiveDataType__Group__08221 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_40_in_rule__PrimitiveDataType__Group__0__Impl8249 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__1__Impl_in_rule__PrimitiveDataType__Group__18280 = new BitSet(new long[]{0x0000020000000000L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__2_in_rule__PrimitiveDataType__Group__18283 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__PrimitiveDataType__Group__1__Impl8311 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__2__Impl_in_rule__PrimitiveDataType__Group__28342 = new BitSet(new long[]{0x000000000007F000L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__3_in_rule__PrimitiveDataType__Group__28345 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_41_in_rule__PrimitiveDataType__Group__2__Impl8373 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__3__Impl_in_rule__PrimitiveDataType__Group__38404 = new BitSet(new long[]{0x0000040000000000L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__4_in_rule__PrimitiveDataType__Group__38407 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__TypeAssignment_3_in_rule__PrimitiveDataType__Group__3__Impl8434 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__4__Impl_in_rule__PrimitiveDataType__Group__48464 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__5_in_rule__PrimitiveDataType__Group__48467 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_42_in_rule__PrimitiveDataType__Group__4__Impl8495 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__5__Impl_in_rule__PrimitiveDataType__Group__58526 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__6_in_rule__PrimitiveDataType__Group__58529 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__NameAssignment_5_in_rule__PrimitiveDataType__Group__5__Impl8556 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__6__Impl_in_rule__PrimitiveDataType__Group__68586 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__PrimitiveDataType__Group__6__Impl8614 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__0__Impl_in_rule__InnerDeclaration__Group__08659 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__1_in_rule__InnerDeclaration__Group__08662 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_43_in_rule__InnerDeclaration__Group__0__Impl8690 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__1__Impl_in_rule__InnerDeclaration__Group__18721 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__2_in_rule__InnerDeclaration__Group__18724 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__NameAssignment_1_in_rule__InnerDeclaration__Group__1__Impl8751 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__2__Impl_in_rule__InnerDeclaration__Group__28781 = new BitSet(new long[]{0x0000100000000000L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__3_in_rule__InnerDeclaration__Group__28784 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__InnerDeclaration__Group__2__Impl8812 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__3__Impl_in_rule__InnerDeclaration__Group__38843 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__4_in_rule__InnerDeclaration__Group__38846 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_44_in_rule__InnerDeclaration__Group__3__Impl8874 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__4__Impl_in_rule__InnerDeclaration__Group__48905 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__5_in_rule__InnerDeclaration__Group__48908 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__DataTypeAssignment_4_in_rule__InnerDeclaration__Group__4__Impl8935 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__5__Impl_in_rule__InnerDeclaration__Group__58965 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__InnerDeclaration__Group__5__Impl8993 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group__0__Impl_in_rule__Signature__Group__09036 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Signature__Group__1_in_rule__Signature__Group__09039 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Alternatives_0_in_rule__Signature__Group__0__Impl9066 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group__1__Impl_in_rule__Signature__Group__19096 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_rule__Signature__Group__2_in_rule__Signature__Group__19099 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__NameAssignment_1_in_rule__Signature__Group__1__Impl9126 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group__2__Impl_in_rule__Signature__Group__29156 = new BitSet(new long[]{0x0000000020000030L});
-        public static final BitSet FOLLOW_rule__Signature__Group__3_in_rule__Signature__Group__29159 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_28_in_rule__Signature__Group__2__Impl9187 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group__3__Impl_in_rule__Signature__Group__39218 = new BitSet(new long[]{0x0000000020000030L});
-        public static final BitSet FOLLOW_rule__Signature__Group__4_in_rule__Signature__Group__39221 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3__0_in_rule__Signature__Group__3__Impl9248 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group__4__Impl_in_rule__Signature__Group__49279 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_29_in_rule__Signature__Group__4__Impl9307 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3__0__Impl_in_rule__Signature__Group_3__09348 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3__1_in_rule__Signature__Group_3__09351 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__ParametersAssignment_3_0_in_rule__Signature__Group_3__0__Impl9378 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3__1__Impl_in_rule__Signature__Group_3__19408 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3_1__0_in_rule__Signature__Group_3__1__Impl9435 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3_1__0__Impl_in_rule__Signature__Group_3_1__09470 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3_1__1_in_rule__Signature__Group_3_1__09473 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__Signature__Group_3_1__0__Impl9501 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__Group_3_1__1__Impl_in_rule__Signature__Group_3_1__19532 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Signature__ParametersAssignment_3_1_1_in_rule__Signature__Group_3_1__1__Impl9559 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__Group__0__Impl_in_rule__Parameter__Group__09593 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__Parameter__Group__1_in_rule__Parameter__Group__09596 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__DataTypeAssignment_0_in_rule__Parameter__Group__0__Impl9623 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__Group__1__Impl_in_rule__Parameter__Group__19653 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__Parameter__NameAssignment_1_in_rule__Parameter__Group__1__Impl9680 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group__0__Impl_in_rule__ProvidedRole__Group__09714 = new BitSet(new long[]{0x0000200000000000L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group__1_in_rule__ProvidedRole__Group__09717 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group__1__Impl_in_rule__ProvidedRole__Group__19775 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group__2_in_rule__ProvidedRole__Group__19778 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_45_in_rule__ProvidedRole__Group__1__Impl9806 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group__2__Impl_in_rule__ProvidedRole__Group__29837 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group_2__0_in_rule__ProvidedRole__Group__2__Impl9864 = new BitSet(new long[]{0x0000000000000032L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group_2__0__Impl_in_rule__ProvidedRole__Group_2__09901 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group_2__1_in_rule__ProvidedRole__Group_2__09904 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__InterfaceAssignment_2_0_in_rule__ProvidedRole__Group_2__0__Impl9931 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedRole__Group_2__1__Impl_in_rule__ProvidedRole__Group_2__19961 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__ProvidedRole__Group_2__1__Impl9990 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group__0__Impl_in_rule__RequiredRole__Group__010027 = new BitSet(new long[]{0x0000400000000000L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group__1_in_rule__RequiredRole__Group__010030 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group__1__Impl_in_rule__RequiredRole__Group__110088 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group__2_in_rule__RequiredRole__Group__110091 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_46_in_rule__RequiredRole__Group__1__Impl10119 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group__2__Impl_in_rule__RequiredRole__Group__210150 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group_2__0_in_rule__RequiredRole__Group__2__Impl10177 = new BitSet(new long[]{0x0000000000000032L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group_2__0__Impl_in_rule__RequiredRole__Group_2__010214 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group_2__1_in_rule__RequiredRole__Group_2__010217 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredRole__InterfaceAssignment_2_0_in_rule__RequiredRole__Group_2__0__Impl10244 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredRole__Group_2__1__Impl_in_rule__RequiredRole__Group_2__110274 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__RequiredRole__Group_2__1__Impl10303 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__0__Impl_in_rule__BasicComponent__Group__010340 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__1_in_rule__BasicComponent__Group__010343 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_47_in_rule__BasicComponent__Group__0__Impl10371 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__1__Impl_in_rule__BasicComponent__Group__110402 = new BitSet(new long[]{0x0000600000100000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__2_in_rule__BasicComponent__Group__110405 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__NameAssignment_1_in_rule__BasicComponent__Group__1__Impl10432 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__2__Impl_in_rule__BasicComponent__Group__210462 = new BitSet(new long[]{0x0000600000100000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__3_in_rule__BasicComponent__Group__210465 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__0_in_rule__BasicComponent__Group__2__Impl10492 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__3__Impl_in_rule__BasicComponent__Group__310523 = new BitSet(new long[]{0x0000600000100000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__4_in_rule__BasicComponent__Group__310526 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__0_in_rule__BasicComponent__Group__3__Impl10553 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__4__Impl_in_rule__BasicComponent__Group__410584 = new BitSet(new long[]{0x0000000100200000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__5_in_rule__BasicComponent__Group__410587 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__BasicComponent__Group__4__Impl10615 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__5__Impl_in_rule__BasicComponent__Group__510646 = new BitSet(new long[]{0x0000000100200000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__6_in_rule__BasicComponent__Group__510649 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__0_in_rule__BasicComponent__Group__5__Impl10676 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group__6__Impl_in_rule__BasicComponent__Group__610707 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__BasicComponent__Group__6__Impl10735 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__0__Impl_in_rule__BasicComponent__Group_2__010780 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__1_in_rule__BasicComponent__Group_2__010783 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_0_in_rule__BasicComponent__Group_2__0__Impl10810 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__1__Impl_in_rule__BasicComponent__Group_2__110840 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__0_in_rule__BasicComponent__Group_2__1__Impl10867 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__0__Impl_in_rule__BasicComponent__Group_2_1__010902 = new BitSet(new long[]{0x0000200000000000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__1_in_rule__BasicComponent__Group_2_1__010905 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__BasicComponent__Group_2_1__0__Impl10933 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__1__Impl_in_rule__BasicComponent__Group_2_1__110964 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_1_1_in_rule__BasicComponent__Group_2_1__1__Impl10991 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__0__Impl_in_rule__BasicComponent__Group_3__011025 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__1_in_rule__BasicComponent__Group_3__011028 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_0_in_rule__BasicComponent__Group_3__0__Impl11055 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__1__Impl_in_rule__BasicComponent__Group_3__111085 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__0_in_rule__BasicComponent__Group_3__1__Impl11112 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__0__Impl_in_rule__BasicComponent__Group_3_1__011147 = new BitSet(new long[]{0x0000400000000000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__1_in_rule__BasicComponent__Group_3_1__011150 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__BasicComponent__Group_3_1__0__Impl11178 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__1__Impl_in_rule__BasicComponent__Group_3_1__111209 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_1_1_in_rule__BasicComponent__Group_3_1__1__Impl11236 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__0__Impl_in_rule__BasicComponent__Group_5__011270 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__1_in_rule__BasicComponent__Group_5__011273 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_32_in_rule__BasicComponent__Group_5__0__Impl11301 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__1__Impl_in_rule__BasicComponent__Group_5__111332 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__2_in_rule__BasicComponent__Group_5__111335 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_28_in_rule__BasicComponent__Group_5__1__Impl11363 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__2__Impl_in_rule__BasicComponent__Group_5__211394 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__3_in_rule__BasicComponent__Group_5__211397 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__RelationshipAssignment_5_2_in_rule__BasicComponent__Group_5__2__Impl11424 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__3__Impl_in_rule__BasicComponent__Group_5__311454 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__4_in_rule__BasicComponent__Group_5__311457 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__0_in_rule__BasicComponent__Group_5__3__Impl11484 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__4__Impl_in_rule__BasicComponent__Group_5__411515 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_29_in_rule__BasicComponent__Group_5__4__Impl11543 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__0__Impl_in_rule__BasicComponent__Group_5_3__011584 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__1_in_rule__BasicComponent__Group_5_3__011587 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__BasicComponent__Group_5_3__0__Impl11615 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__1__Impl_in_rule__BasicComponent__Group_5_3__111646 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__BasicComponent__RelationshipAssignment_5_3_1_in_rule__BasicComponent__Group_5_3__1__Impl11673 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__0__Impl_in_rule__CompositeComponent__Group__011707 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__1_in_rule__CompositeComponent__Group__011710 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_48_in_rule__CompositeComponent__Group__0__Impl11738 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__1__Impl_in_rule__CompositeComponent__Group__111769 = new BitSet(new long[]{0x0000600000100000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__2_in_rule__CompositeComponent__Group__111772 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__NameAssignment_1_in_rule__CompositeComponent__Group__1__Impl11799 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__2__Impl_in_rule__CompositeComponent__Group__211829 = new BitSet(new long[]{0x0000600000100000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__3_in_rule__CompositeComponent__Group__211832 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__0_in_rule__CompositeComponent__Group__2__Impl11859 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__3__Impl_in_rule__CompositeComponent__Group__311890 = new BitSet(new long[]{0x0000600000100000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__4_in_rule__CompositeComponent__Group__311893 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__0_in_rule__CompositeComponent__Group__3__Impl11920 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__4__Impl_in_rule__CompositeComponent__Group__411951 = new BitSet(new long[]{0x0002000100200000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__5_in_rule__CompositeComponent__Group__411954 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__CompositeComponent__Group__4__Impl11982 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__5__Impl_in_rule__CompositeComponent__Group__512013 = new BitSet(new long[]{0x0002000100200000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__6_in_rule__CompositeComponent__Group__512016 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__0_in_rule__CompositeComponent__Group__5__Impl12043 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__6__Impl_in_rule__CompositeComponent__Group__612074 = new BitSet(new long[]{0x0002000100200000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__7_in_rule__CompositeComponent__Group__612077 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__0_in_rule__CompositeComponent__Group__6__Impl12104 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group__7__Impl_in_rule__CompositeComponent__Group__712135 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__CompositeComponent__Group__7__Impl12163 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__0__Impl_in_rule__CompositeComponent__Group_2__012210 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__1_in_rule__CompositeComponent__Group_2__012213 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_0_in_rule__CompositeComponent__Group_2__0__Impl12240 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__1__Impl_in_rule__CompositeComponent__Group_2__112270 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__0_in_rule__CompositeComponent__Group_2__1__Impl12297 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__0__Impl_in_rule__CompositeComponent__Group_2_1__012332 = new BitSet(new long[]{0x0000200000000000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__1_in_rule__CompositeComponent__Group_2_1__012335 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__CompositeComponent__Group_2_1__0__Impl12363 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__1__Impl_in_rule__CompositeComponent__Group_2_1__112394 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_1_1_in_rule__CompositeComponent__Group_2_1__1__Impl12421 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__0__Impl_in_rule__CompositeComponent__Group_3__012455 = new BitSet(new long[]{0x0000000000800000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__1_in_rule__CompositeComponent__Group_3__012458 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_0_in_rule__CompositeComponent__Group_3__0__Impl12485 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__1__Impl_in_rule__CompositeComponent__Group_3__112515 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__0_in_rule__CompositeComponent__Group_3__1__Impl12542 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__0__Impl_in_rule__CompositeComponent__Group_3_1__012577 = new BitSet(new long[]{0x0000400000000000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__1_in_rule__CompositeComponent__Group_3_1__012580 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__CompositeComponent__Group_3_1__0__Impl12608 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__1__Impl_in_rule__CompositeComponent__Group_3_1__112639 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_1_1_in_rule__CompositeComponent__Group_3_1__1__Impl12666 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__0__Impl_in_rule__CompositeComponent__Group_5__012700 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__1_in_rule__CompositeComponent__Group_5__012703 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_32_in_rule__CompositeComponent__Group_5__0__Impl12731 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__1__Impl_in_rule__CompositeComponent__Group_5__112762 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__2_in_rule__CompositeComponent__Group_5__112765 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_28_in_rule__CompositeComponent__Group_5__1__Impl12793 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__2__Impl_in_rule__CompositeComponent__Group_5__212824 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__3_in_rule__CompositeComponent__Group_5__212827 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_2_in_rule__CompositeComponent__Group_5__2__Impl12854 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__3__Impl_in_rule__CompositeComponent__Group_5__312884 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__4_in_rule__CompositeComponent__Group_5__312887 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__0_in_rule__CompositeComponent__Group_5__3__Impl12914 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__4__Impl_in_rule__CompositeComponent__Group_5__412945 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_29_in_rule__CompositeComponent__Group_5__4__Impl12973 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__0__Impl_in_rule__CompositeComponent__Group_5_3__013014 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__1_in_rule__CompositeComponent__Group_5_3__013017 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__CompositeComponent__Group_5_3__0__Impl13045 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__1__Impl_in_rule__CompositeComponent__Group_5_3__113076 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_3_1_in_rule__CompositeComponent__Group_5_3__1__Impl13103 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__0__Impl_in_rule__CompositeComponent__Group_6__013137 = new BitSet(new long[]{0x0008000000000000L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__1_in_rule__CompositeComponent__Group_6__013140 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_49_in_rule__CompositeComponent__Group_6__0__Impl13168 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__1__Impl_in_rule__CompositeComponent__Group_6__113199 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__CompositeComponent__AssemblyAssignment_6_1_in_rule__CompositeComponent__Group_6__1__Impl13226 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__0__Impl_in_rule__SubSystem__Group__013260 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__1_in_rule__SubSystem__Group__013263 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_50_in_rule__SubSystem__Group__0__Impl13291 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__1__Impl_in_rule__SubSystem__Group__113322 = new BitSet(new long[]{0x0000000600100000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__2_in_rule__SubSystem__Group__113325 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__NameAssignment_1_in_rule__SubSystem__Group__1__Impl13352 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__2__Impl_in_rule__SubSystem__Group__213382 = new BitSet(new long[]{0x0000000600100000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__3_in_rule__SubSystem__Group__213385 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__0_in_rule__SubSystem__Group__2__Impl13412 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__3__Impl_in_rule__SubSystem__Group__313443 = new BitSet(new long[]{0x0000000600100000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__4_in_rule__SubSystem__Group__313446 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__0_in_rule__SubSystem__Group__3__Impl13473 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__4__Impl_in_rule__SubSystem__Group__413504 = new BitSet(new long[]{0x0002000100200000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__5_in_rule__SubSystem__Group__413507 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__SubSystem__Group__4__Impl13535 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__5__Impl_in_rule__SubSystem__Group__513566 = new BitSet(new long[]{0x0002000100200000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__6_in_rule__SubSystem__Group__513569 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__0_in_rule__SubSystem__Group__5__Impl13596 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__6__Impl_in_rule__SubSystem__Group__613627 = new BitSet(new long[]{0x0002000100200000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__7_in_rule__SubSystem__Group__613630 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_6__0_in_rule__SubSystem__Group__6__Impl13657 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group__7__Impl_in_rule__SubSystem__Group__713688 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__SubSystem__Group__7__Impl13716 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__0__Impl_in_rule__SubSystem__Group_2__013763 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__1_in_rule__SubSystem__Group_2__013766 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_33_in_rule__SubSystem__Group_2__0__Impl13794 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__1__Impl_in_rule__SubSystem__Group_2__113825 = new BitSet(new long[]{0x0000200000000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__2_in_rule__SubSystem__Group_2__113828 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__SubSystem__Group_2__1__Impl13856 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__2__Impl_in_rule__SubSystem__Group_2__213887 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__3_in_rule__SubSystem__Group_2__213890 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_2_in_rule__SubSystem__Group_2__2__Impl13917 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__3__Impl_in_rule__SubSystem__Group_2__313947 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__4_in_rule__SubSystem__Group_2__313950 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__0_in_rule__SubSystem__Group_2__3__Impl13977 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2__4__Impl_in_rule__SubSystem__Group_2__414008 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__SubSystem__Group_2__4__Impl14036 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__0__Impl_in_rule__SubSystem__Group_2_3__014077 = new BitSet(new long[]{0x0000200000000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__1_in_rule__SubSystem__Group_2_3__014080 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__SubSystem__Group_2_3__0__Impl14108 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__1__Impl_in_rule__SubSystem__Group_2_3__114139 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_3_1_in_rule__SubSystem__Group_2_3__1__Impl14166 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__0__Impl_in_rule__SubSystem__Group_3__014200 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__1_in_rule__SubSystem__Group_3__014203 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_34_in_rule__SubSystem__Group_3__0__Impl14231 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__1__Impl_in_rule__SubSystem__Group_3__114262 = new BitSet(new long[]{0x0000400000000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__2_in_rule__SubSystem__Group_3__114265 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__SubSystem__Group_3__1__Impl14293 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__2__Impl_in_rule__SubSystem__Group_3__214324 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__3_in_rule__SubSystem__Group_3__214327 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_2_in_rule__SubSystem__Group_3__2__Impl14354 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__3__Impl_in_rule__SubSystem__Group_3__314384 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__4_in_rule__SubSystem__Group_3__314387 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__0_in_rule__SubSystem__Group_3__3__Impl14414 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3__4__Impl_in_rule__SubSystem__Group_3__414445 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__SubSystem__Group_3__4__Impl14473 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__0__Impl_in_rule__SubSystem__Group_3_3__014514 = new BitSet(new long[]{0x0000400000000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__1_in_rule__SubSystem__Group_3_3__014517 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__SubSystem__Group_3_3__0__Impl14545 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__1__Impl_in_rule__SubSystem__Group_3_3__114576 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_3_1_in_rule__SubSystem__Group_3_3__1__Impl14603 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__0__Impl_in_rule__SubSystem__Group_5__014637 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__1_in_rule__SubSystem__Group_5__014640 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_32_in_rule__SubSystem__Group_5__0__Impl14668 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__1__Impl_in_rule__SubSystem__Group_5__114699 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__2_in_rule__SubSystem__Group_5__114702 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_28_in_rule__SubSystem__Group_5__1__Impl14730 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__2__Impl_in_rule__SubSystem__Group_5__214761 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__3_in_rule__SubSystem__Group_5__214764 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__RelationshipAssignment_5_2_in_rule__SubSystem__Group_5__2__Impl14791 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__3__Impl_in_rule__SubSystem__Group_5__314821 = new BitSet(new long[]{0x0000000020800000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__4_in_rule__SubSystem__Group_5__314824 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__0_in_rule__SubSystem__Group_5__3__Impl14851 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5__4__Impl_in_rule__SubSystem__Group_5__414882 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_29_in_rule__SubSystem__Group_5__4__Impl14910 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__0__Impl_in_rule__SubSystem__Group_5_3__014951 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__1_in_rule__SubSystem__Group_5_3__014954 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__SubSystem__Group_5_3__0__Impl14982 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__1__Impl_in_rule__SubSystem__Group_5_3__115013 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__RelationshipAssignment_5_3_1_in_rule__SubSystem__Group_5_3__1__Impl15040 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_6__0__Impl_in_rule__SubSystem__Group_6__015074 = new BitSet(new long[]{0x0008000000000000L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_6__1_in_rule__SubSystem__Group_6__015077 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_49_in_rule__SubSystem__Group_6__0__Impl15105 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__Group_6__1__Impl_in_rule__SubSystem__Group_6__115136 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__SubSystem__AssemblyAssignment_6_1_in_rule__SubSystem__Group_6__1__Impl15163 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__0__Impl_in_rule__ComposedStructureAssembly__Group__015197 = new BitSet(new long[]{0x0008000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__1_in_rule__ComposedStructureAssembly__Group__015200 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__1__Impl_in_rule__ComposedStructureAssembly__Group__115258 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__2_in_rule__ComposedStructureAssembly__Group__115261 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_51_in_rule__ComposedStructureAssembly__Group__1__Impl15289 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__2__Impl_in_rule__ComposedStructureAssembly__Group__215320 = new BitSet(new long[]{0x00F0000000200000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__3_in_rule__ComposedStructureAssembly__Group__215323 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group__2__Impl15351 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__3__Impl_in_rule__ComposedStructureAssembly__Group__315382 = new BitSet(new long[]{0x00F0000000200000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__4_in_rule__ComposedStructureAssembly__Group__315385 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__0_in_rule__ComposedStructureAssembly__Group__3__Impl15412 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__4__Impl_in_rule__ComposedStructureAssembly__Group__415443 = new BitSet(new long[]{0x00F0000000200000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__5_in_rule__ComposedStructureAssembly__Group__415446 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__0_in_rule__ComposedStructureAssembly__Group__4__Impl15473 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__5__Impl_in_rule__ComposedStructureAssembly__Group__515504 = new BitSet(new long[]{0x00F0000000200000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__6_in_rule__ComposedStructureAssembly__Group__515507 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__0_in_rule__ComposedStructureAssembly__Group__5__Impl15534 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__6__Impl_in_rule__ComposedStructureAssembly__Group__615565 = new BitSet(new long[]{0x00F0000000200000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__7_in_rule__ComposedStructureAssembly__Group__615568 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__0_in_rule__ComposedStructureAssembly__Group__6__Impl15595 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__7__Impl_in_rule__ComposedStructureAssembly__Group__715626 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group__7__Impl15654 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3__015701 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__1_in_rule__ComposedStructureAssembly__Group_3__015704 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_52_in_rule__ComposedStructureAssembly__Group_3__0__Impl15732 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3__115763 = new BitSet(new long[]{0x0100000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__2_in_rule__ComposedStructureAssembly__Group_3__115766 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_3__1__Impl15794 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__2__Impl_in_rule__ComposedStructureAssembly__Group_3__215825 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__3_in_rule__ComposedStructureAssembly__Group_3__215828 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2_in_rule__ComposedStructureAssembly__Group_3__2__Impl15855 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__3__Impl_in_rule__ComposedStructureAssembly__Group_3__315885 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__4_in_rule__ComposedStructureAssembly__Group_3__315888 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0_in_rule__ComposedStructureAssembly__Group_3__3__Impl15915 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__4__Impl_in_rule__ComposedStructureAssembly__Group_3__415946 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_3__4__Impl15974 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3_3__016015 = new BitSet(new long[]{0x0100000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1_in_rule__ComposedStructureAssembly__Group_3_3__016018 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__ComposedStructureAssembly__Group_3_3__0__Impl16046 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3_3__116077 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1_in_rule__ComposedStructureAssembly__Group_3_3__1__Impl16104 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__0__Impl_in_rule__ComposedStructureAssembly__Group_4__016138 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__1_in_rule__ComposedStructureAssembly__Group_4__016141 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_53_in_rule__ComposedStructureAssembly__Group_4__0__Impl16169 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__1__Impl_in_rule__ComposedStructureAssembly__Group_4__116200 = new BitSet(new long[]{0x0400000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__2_in_rule__ComposedStructureAssembly__Group_4__116203 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_4__1__Impl16231 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__2__Impl_in_rule__ComposedStructureAssembly__Group_4__216262 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__3_in_rule__ComposedStructureAssembly__Group_4__216265 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2_in_rule__ComposedStructureAssembly__Group_4__2__Impl16292 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__3__Impl_in_rule__ComposedStructureAssembly__Group_4__316322 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__4_in_rule__ComposedStructureAssembly__Group_4__316325 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0_in_rule__ComposedStructureAssembly__Group_4__3__Impl16352 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__4__Impl_in_rule__ComposedStructureAssembly__Group_4__416383 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_4__4__Impl16411 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0__Impl_in_rule__ComposedStructureAssembly__Group_4_3__016452 = new BitSet(new long[]{0x0400000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1_in_rule__ComposedStructureAssembly__Group_4_3__016455 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__ComposedStructureAssembly__Group_4_3__0__Impl16483 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1__Impl_in_rule__ComposedStructureAssembly__Group_4_3__116514 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1_in_rule__ComposedStructureAssembly__Group_4_3__1__Impl16541 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__0__Impl_in_rule__ComposedStructureAssembly__Group_5__016575 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__1_in_rule__ComposedStructureAssembly__Group_5__016578 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_54_in_rule__ComposedStructureAssembly__Group_5__0__Impl16606 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__1__Impl_in_rule__ComposedStructureAssembly__Group_5__116637 = new BitSet(new long[]{0x8000000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__2_in_rule__ComposedStructureAssembly__Group_5__116640 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_5__1__Impl16668 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__2__Impl_in_rule__ComposedStructureAssembly__Group_5__216699 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__3_in_rule__ComposedStructureAssembly__Group_5__216702 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2_in_rule__ComposedStructureAssembly__Group_5__2__Impl16729 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__3__Impl_in_rule__ComposedStructureAssembly__Group_5__316759 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__4_in_rule__ComposedStructureAssembly__Group_5__316762 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0_in_rule__ComposedStructureAssembly__Group_5__3__Impl16789 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__4__Impl_in_rule__ComposedStructureAssembly__Group_5__416820 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_5__4__Impl16848 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0__Impl_in_rule__ComposedStructureAssembly__Group_5_3__016889 = new BitSet(new long[]{0x8000000000000000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1_in_rule__ComposedStructureAssembly__Group_5_3__016892 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__ComposedStructureAssembly__Group_5_3__0__Impl16920 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1__Impl_in_rule__ComposedStructureAssembly__Group_5_3__116951 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1_in_rule__ComposedStructureAssembly__Group_5_3__1__Impl16978 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__0__Impl_in_rule__ComposedStructureAssembly__Group_6__017012 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__1_in_rule__ComposedStructureAssembly__Group_6__017015 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_55_in_rule__ComposedStructureAssembly__Group_6__0__Impl17043 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__1__Impl_in_rule__ComposedStructureAssembly__Group_6__117074 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__2_in_rule__ComposedStructureAssembly__Group_6__117077 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_6__1__Impl17105 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__2__Impl_in_rule__ComposedStructureAssembly__Group_6__217136 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__3_in_rule__ComposedStructureAssembly__Group_6__217139 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2_in_rule__ComposedStructureAssembly__Group_6__2__Impl17166 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__3__Impl_in_rule__ComposedStructureAssembly__Group_6__317196 = new BitSet(new long[]{0x0000000000A00000L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__4_in_rule__ComposedStructureAssembly__Group_6__317199 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0_in_rule__ComposedStructureAssembly__Group_6__3__Impl17226 = new BitSet(new long[]{0x0000000000800002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__4__Impl_in_rule__ComposedStructureAssembly__Group_6__417257 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_6__4__Impl17285 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0__Impl_in_rule__ComposedStructureAssembly__Group_6_3__017326 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1_in_rule__ComposedStructureAssembly__Group_6_3__017329 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_rule__ComposedStructureAssembly__Group_6_3__0__Impl17357 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1__Impl_in_rule__ComposedStructureAssembly__Group_6_3__117388 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1_in_rule__ComposedStructureAssembly__Group_6_3__1__Impl17415 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__0__Impl_in_rule__AssemblyContext__Group__017449 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__1_in_rule__AssemblyContext__Group__017452 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_56_in_rule__AssemblyContext__Group__0__Impl17480 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__1__Impl_in_rule__AssemblyContext__Group__117511 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__2_in_rule__AssemblyContext__Group__117514 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__NameAssignment_1_in_rule__AssemblyContext__Group__1__Impl17541 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__2__Impl_in_rule__AssemblyContext__Group__217571 = new BitSet(new long[]{0x0200000000000000L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__3_in_rule__AssemblyContext__Group__217574 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__AssemblyContext__Group__2__Impl17602 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__3__Impl_in_rule__AssemblyContext__Group__317633 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__4_in_rule__AssemblyContext__Group__317636 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_57_in_rule__AssemblyContext__Group__3__Impl17664 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__4__Impl_in_rule__AssemblyContext__Group__417695 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__5_in_rule__AssemblyContext__Group__417698 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__EncapsulatedComponentAssignment_4_in_rule__AssemblyContext__Group__4__Impl17725 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyContext__Group__5__Impl_in_rule__AssemblyContext__Group__517755 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__AssemblyContext__Group__5__Impl17783 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__0__Impl_in_rule__AssemblyConnector__Group__017826 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__1_in_rule__AssemblyConnector__Group__017829 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_58_in_rule__AssemblyConnector__Group__0__Impl17857 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__1__Impl_in_rule__AssemblyConnector__Group__117888 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__2_in_rule__AssemblyConnector__Group__117891 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__NameAssignment_1_in_rule__AssemblyConnector__Group__1__Impl17918 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__2__Impl_in_rule__AssemblyConnector__Group__217948 = new BitSet(new long[]{0x0800000000000000L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__3_in_rule__AssemblyConnector__Group__217951 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__AssemblyConnector__Group__2__Impl17979 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__3__Impl_in_rule__AssemblyConnector__Group__318010 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__4_in_rule__AssemblyConnector__Group__318013 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_59_in_rule__AssemblyConnector__Group__3__Impl18041 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__4__Impl_in_rule__AssemblyConnector__Group__418072 = new BitSet(new long[]{0x1000000000000000L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__5_in_rule__AssemblyConnector__Group__418075 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__RequiredRoleAssignment_4_in_rule__AssemblyConnector__Group__4__Impl18102 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__5__Impl_in_rule__AssemblyConnector__Group__518132 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__6_in_rule__AssemblyConnector__Group__518135 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_60_in_rule__AssemblyConnector__Group__5__Impl18163 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__6__Impl_in_rule__AssemblyConnector__Group__618194 = new BitSet(new long[]{0x2000000000000000L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__7_in_rule__AssemblyConnector__Group__618197 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__ProvidedRoleAssignment_6_in_rule__AssemblyConnector__Group__6__Impl18224 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__7__Impl_in_rule__AssemblyConnector__Group__718254 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__8_in_rule__AssemblyConnector__Group__718257 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_61_in_rule__AssemblyConnector__Group__7__Impl18285 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__8__Impl_in_rule__AssemblyConnector__Group__818316 = new BitSet(new long[]{0x4000000000000000L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__9_in_rule__AssemblyConnector__Group__818319 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8_in_rule__AssemblyConnector__Group__8__Impl18346 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__9__Impl_in_rule__AssemblyConnector__Group__918376 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__10_in_rule__AssemblyConnector__Group__918379 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_62_in_rule__AssemblyConnector__Group__9__Impl18407 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__10__Impl_in_rule__AssemblyConnector__Group__1018438 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__11_in_rule__AssemblyConnector__Group__1018441 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__RequiringAssemblyContextAssignment_10_in_rule__AssemblyConnector__Group__10__Impl18468 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__11__Impl_in_rule__AssemblyConnector__Group__1118498 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__AssemblyConnector__Group__11__Impl18526 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__0__Impl_in_rule__ProvidedDelegationConnector__Group__018581 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__1_in_rule__ProvidedDelegationConnector__Group__018584 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_63_in_rule__ProvidedDelegationConnector__Group__0__Impl18612 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__1__Impl_in_rule__ProvidedDelegationConnector__Group__118643 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__2_in_rule__ProvidedDelegationConnector__Group__118646 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__NameAssignment_1_in_rule__ProvidedDelegationConnector__Group__1__Impl18673 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__2__Impl_in_rule__ProvidedDelegationConnector__Group__218703 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__3_in_rule__ProvidedDelegationConnector__Group__218706 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__ProvidedDelegationConnector__Group__2__Impl18734 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__3__Impl_in_rule__ProvidedDelegationConnector__Group__318765 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__4_in_rule__ProvidedDelegationConnector__Group__318768 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_64_in_rule__ProvidedDelegationConnector__Group__3__Impl18796 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__4__Impl_in_rule__ProvidedDelegationConnector__Group__418827 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__5_in_rule__ProvidedDelegationConnector__Group__418830 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__AssemblyContextAssignment_4_in_rule__ProvidedDelegationConnector__Group__4__Impl18857 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__5__Impl_in_rule__ProvidedDelegationConnector__Group__518887 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__6_in_rule__ProvidedDelegationConnector__Group__518890 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_65_in_rule__ProvidedDelegationConnector__Group__5__Impl18918 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__6__Impl_in_rule__ProvidedDelegationConnector__Group__618949 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__7_in_rule__ProvidedDelegationConnector__Group__618952 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6_in_rule__ProvidedDelegationConnector__Group__6__Impl18979 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__7__Impl_in_rule__ProvidedDelegationConnector__Group__719009 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__8_in_rule__ProvidedDelegationConnector__Group__719012 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_66_in_rule__ProvidedDelegationConnector__Group__7__Impl19040 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__8__Impl_in_rule__ProvidedDelegationConnector__Group__819071 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__9_in_rule__ProvidedDelegationConnector__Group__819074 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8_in_rule__ProvidedDelegationConnector__Group__8__Impl19101 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__9__Impl_in_rule__ProvidedDelegationConnector__Group__919131 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__ProvidedDelegationConnector__Group__9__Impl19159 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__0__Impl_in_rule__RequiredDelegationConnector__Group__019210 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__1_in_rule__RequiredDelegationConnector__Group__019213 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_67_in_rule__RequiredDelegationConnector__Group__0__Impl19241 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__1__Impl_in_rule__RequiredDelegationConnector__Group__119272 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__2_in_rule__RequiredDelegationConnector__Group__119275 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__NameAssignment_1_in_rule__RequiredDelegationConnector__Group__1__Impl19302 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__2__Impl_in_rule__RequiredDelegationConnector__Group__219332 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__3_in_rule__RequiredDelegationConnector__Group__219335 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_20_in_rule__RequiredDelegationConnector__Group__2__Impl19363 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__3__Impl_in_rule__RequiredDelegationConnector__Group__319394 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__4_in_rule__RequiredDelegationConnector__Group__319397 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_64_in_rule__RequiredDelegationConnector__Group__3__Impl19425 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__4__Impl_in_rule__RequiredDelegationConnector__Group__419456 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__5_in_rule__RequiredDelegationConnector__Group__419459 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__AssemblyContextAssignment_4_in_rule__RequiredDelegationConnector__Group__4__Impl19486 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__5__Impl_in_rule__RequiredDelegationConnector__Group__519516 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__6_in_rule__RequiredDelegationConnector__Group__519519 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_68_in_rule__RequiredDelegationConnector__Group__5__Impl19547 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__6__Impl_in_rule__RequiredDelegationConnector__Group__619578 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000020L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__7_in_rule__RequiredDelegationConnector__Group__619581 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6_in_rule__RequiredDelegationConnector__Group__6__Impl19608 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__7__Impl_in_rule__RequiredDelegationConnector__Group__719638 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__8_in_rule__RequiredDelegationConnector__Group__719641 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_69_in_rule__RequiredDelegationConnector__Group__7__Impl19669 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__8__Impl_in_rule__RequiredDelegationConnector__Group__819700 = new BitSet(new long[]{0x0000000000200000L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__9_in_rule__RequiredDelegationConnector__Group__819703 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8_in_rule__RequiredDelegationConnector__Group__8__Impl19730 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__9__Impl_in_rule__RequiredDelegationConnector__Group__919760 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_21_in_rule__RequiredDelegationConnector__Group__9__Impl19788 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Repository__NameAssignment_119844 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleDataType_in_rule__Repository__DatatypesAssignment_3_219875 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleDataType_in_rule__Repository__DatatypesAssignment_3_3_119906 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInterface_in_rule__Repository__InterfacesAssignment_4_219937 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInterface_in_rule__Repository__InterfacesAssignment_4_3_119968 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_in_rule__Repository__ComponentsAssignment_5_219999 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_in_rule__Repository__ComponentsAssignment_5_3_120030 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Interface__NameAssignment_120061 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_220096 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_3_120135 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_220170 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_3_120201 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__NameAssignment_120232 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_220267 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_120306 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_220341 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_120372 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_220403 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_120434 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CollectionDataType__NameAssignment_120465 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CollectionDataType__InnerTypeAssignment_420500 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeDataType__NameAssignment_120535 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_220570 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_3_120609 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_220644 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_120675 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rulePrimitiveTypeEnum_in_rule__PrimitiveDataType__TypeAssignment_320706 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__PrimitiveDataType__NameAssignment_520737 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__InnerDeclaration__NameAssignment_120768 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__InnerDeclaration__DataTypeAssignment_420803 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Signature__ReturnTypeAssignment_0_020842 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Signature__NameAssignment_120877 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_020908 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_1_120939 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Parameter__DataTypeAssignment_020974 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__Parameter__NameAssignment_121009 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedRole__InterfaceAssignment_2_021044 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredRole__InterfaceAssignment_2_021083 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__BasicComponent__NameAssignment_121118 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_021149 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_1_121180 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_021211 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_1_121242 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_221277 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_3_121316 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeComponent__NameAssignment_121351 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_021382 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_1_121413 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_021444 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_1_121475 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_221510 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_3_121549 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_rule__CompositeComponent__AssemblyAssignment_6_121584 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__SubSystem__NameAssignment_121615 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_221646 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_3_121677 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_221708 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_3_121739 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_221774 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_3_121813 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_rule__SubSystem__AssemblyAssignment_6_121848 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_221879 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_121910 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_221941 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_121972 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_222003 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_122034 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_222065 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_122096 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyContext__NameAssignment_122127 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyContext__EncapsulatedComponentAssignment_422162 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__NameAssignment_122197 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiredRoleAssignment_422232 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidedRoleAssignment_622271 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_822310 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiringAssemblyContextAssignment_1022349 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__NameAssignment_122384 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__AssemblyContextAssignment_422419 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_622458 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_822497 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__NameAssignment_122532 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__AssemblyContextAssignment_422567 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_622606 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_822645 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Repository__DatatypesAssignment_3_0_in_rule__Repository__Alternatives_31426 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Repository__InterfacesAssignment_3_1_in_rule__Repository__Alternatives_31444 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Repository__ComponentsAssignment_3_2_in_rule__Repository__Alternatives_31462 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleCollectionDataType_in_rule__DataType__Alternatives1495 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleCompositeDataType_in_rule__DataType__Alternatives1512 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rulePrimitiveDataType_in_rule__DataType__Alternatives1529 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRepositoryComponent_Impl_in_rule__RepositoryComponent__Alternatives1561 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleBasicComponent_in_rule__RepositoryComponent__Alternatives1578 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleCompositeComponent_in_rule__RepositoryComponent__Alternatives1595 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleSubSystem_in_rule__RepositoryComponent__Alternatives1612 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_RULE_STRING_in_rule__EString__Alternatives1644 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_RULE_ID_in_rule__EString__Alternatives1661 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__ReturnTypeAssignment_0_0_in_rule__Signature__Alternatives_01693 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_11_in_rule__Signature__Alternatives_01712 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_12_in_rule__PrimitiveTypeEnum__Alternatives1747 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_13_in_rule__PrimitiveTypeEnum__Alternatives1768 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_14_in_rule__PrimitiveTypeEnum__Alternatives1789 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_15_in_rule__PrimitiveTypeEnum__Alternatives1810 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_16_in_rule__PrimitiveTypeEnum__Alternatives1831 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_17_in_rule__PrimitiveTypeEnum__Alternatives1852 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_18_in_rule__PrimitiveTypeEnum__Alternatives1873 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Repository__Group__0__Impl_in_rule__Repository__Group__01906 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__Repository__Group__1_in_rule__Repository__Group__01909 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_19_in_rule__Repository__Group__0__Impl1937 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Repository__Group__1__Impl_in_rule__Repository__Group__11968 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__Repository__Group__2_in_rule__Repository__Group__11971 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Repository__NameAssignment_1_in_rule__Repository__Group__1__Impl1998 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Repository__Group__2__Impl_in_rule__Repository__Group__22028 = new BitSet(new long[]{0x0000B02510600000L});
+        public static final BitSet FOLLOW_rule__Repository__Group__3_in_rule__Repository__Group__22031 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__Repository__Group__2__Impl2059 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Repository__Group__3__Impl_in_rule__Repository__Group__32090 = new BitSet(new long[]{0x0000B02510600000L});
+        public static final BitSet FOLLOW_rule__Repository__Group__4_in_rule__Repository__Group__32093 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Repository__Alternatives_3_in_rule__Repository__Group__3__Impl2120 = new BitSet(new long[]{0x0000B02510400002L});
+        public static final BitSet FOLLOW_rule__Repository__Group__4__Impl_in_rule__Repository__Group__42151 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__Repository__Group__4__Impl2179 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group__0__Impl_in_rule__Interface__Group__02220 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__Interface__Group__1_in_rule__Interface__Group__02223 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_22_in_rule__Interface__Group__0__Impl2251 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group__1__Impl_in_rule__Interface__Group__12282 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__Interface__Group__2_in_rule__Interface__Group__12285 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__NameAssignment_1_in_rule__Interface__Group__1__Impl2312 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group__2__Impl_in_rule__Interface__Group__22342 = new BitSet(new long[]{0x0000000008A00000L});
+        public static final BitSet FOLLOW_rule__Interface__Group__3_in_rule__Interface__Group__22345 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__Interface__Group__2__Impl2373 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group__3__Impl_in_rule__Interface__Group__32404 = new BitSet(new long[]{0x0000000008A00000L});
+        public static final BitSet FOLLOW_rule__Interface__Group__4_in_rule__Interface__Group__32407 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3__0_in_rule__Interface__Group__3__Impl2434 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group__4__Impl_in_rule__Interface__Group__42465 = new BitSet(new long[]{0x0000000008A00000L});
+        public static final BitSet FOLLOW_rule__Interface__Group__5_in_rule__Interface__Group__42468 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4__0_in_rule__Interface__Group__4__Impl2495 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group__5__Impl_in_rule__Interface__Group__52526 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__Interface__Group__5__Impl2554 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3__0__Impl_in_rule__Interface__Group_3__02597 = new BitSet(new long[]{0x0000000001000000L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3__1_in_rule__Interface__Group_3__02600 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_23_in_rule__Interface__Group_3__0__Impl2628 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3__1__Impl_in_rule__Interface__Group_3__12659 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3__2_in_rule__Interface__Group_3__12662 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_24_in_rule__Interface__Group_3__1__Impl2690 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3__2__Impl_in_rule__Interface__Group_3__22721 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3__3_in_rule__Interface__Group_3__22724 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__ParentInterfacesAssignment_3_2_in_rule__Interface__Group_3__2__Impl2751 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3__3__Impl_in_rule__Interface__Group_3__32781 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3__4_in_rule__Interface__Group_3__32784 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3_3__0_in_rule__Interface__Group_3__3__Impl2811 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3__4__Impl_in_rule__Interface__Group_3__42842 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_25_in_rule__Interface__Group_3__4__Impl2870 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3_3__0__Impl_in_rule__Interface__Group_3_3__02911 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3_3__1_in_rule__Interface__Group_3_3__02914 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__Interface__Group_3_3__0__Impl2942 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_3_3__1__Impl_in_rule__Interface__Group_3_3__12973 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__ParentInterfacesAssignment_3_3_1_in_rule__Interface__Group_3_3__1__Impl3000 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4__0__Impl_in_rule__Interface__Group_4__03034 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4__1_in_rule__Interface__Group_4__03037 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_27_in_rule__Interface__Group_4__0__Impl3065 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4__1__Impl_in_rule__Interface__Group_4__13096 = new BitSet(new long[]{0x0000000000000830L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4__2_in_rule__Interface__Group_4__13099 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__Interface__Group_4__1__Impl3127 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4__2__Impl_in_rule__Interface__Group_4__23158 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4__3_in_rule__Interface__Group_4__23161 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__SignaturesAssignment_4_2_in_rule__Interface__Group_4__2__Impl3188 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4__3__Impl_in_rule__Interface__Group_4__33218 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4__4_in_rule__Interface__Group_4__33221 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4_3__0_in_rule__Interface__Group_4__3__Impl3248 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4__4__Impl_in_rule__Interface__Group_4__43279 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__Interface__Group_4__4__Impl3307 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4_3__0__Impl_in_rule__Interface__Group_4_3__03348 = new BitSet(new long[]{0x0000000000000830L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4_3__1_in_rule__Interface__Group_4_3__03351 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__Interface__Group_4_3__0__Impl3379 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__Group_4_3__1__Impl_in_rule__Interface__Group_4_3__13410 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Interface__SignaturesAssignment_4_3_1_in_rule__Interface__Group_4_3__1__Impl3437 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__0__Impl_in_rule__RepositoryComponent_Impl__Group__03471 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__1_in_rule__RepositoryComponent_Impl__Group__03474 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_28_in_rule__RepositoryComponent_Impl__Group__0__Impl3502 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__1__Impl_in_rule__RepositoryComponent_Impl__Group__13533 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__2_in_rule__RepositoryComponent_Impl__Group__13536 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__NameAssignment_1_in_rule__RepositoryComponent_Impl__Group__1__Impl3563 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__2__Impl_in_rule__RepositoryComponent_Impl__Group__23593 = new BitSet(new long[]{0x00000000E0200000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__3_in_rule__RepositoryComponent_Impl__Group__23596 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__RepositoryComponent_Impl__Group__2__Impl3624 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__3__Impl_in_rule__RepositoryComponent_Impl__Group__33655 = new BitSet(new long[]{0x00000000E0200000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__4_in_rule__RepositoryComponent_Impl__Group__33658 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__0_in_rule__RepositoryComponent_Impl__Group__3__Impl3685 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__4__Impl_in_rule__RepositoryComponent_Impl__Group__43716 = new BitSet(new long[]{0x00000000E0200000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__5_in_rule__RepositoryComponent_Impl__Group__43719 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__0_in_rule__RepositoryComponent_Impl__Group__4__Impl3746 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__5__Impl_in_rule__RepositoryComponent_Impl__Group__53777 = new BitSet(new long[]{0x00000000E0200000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__6_in_rule__RepositoryComponent_Impl__Group__53780 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__0_in_rule__RepositoryComponent_Impl__Group__5__Impl3807 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group__6__Impl_in_rule__RepositoryComponent_Impl__Group__63838 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__RepositoryComponent_Impl__Group__6__Impl3866 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3__03911 = new BitSet(new long[]{0x0000000001000000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__1_in_rule__RepositoryComponent_Impl__Group_3__03914 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_29_in_rule__RepositoryComponent_Impl__Group_3__0__Impl3942 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3__13973 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__2_in_rule__RepositoryComponent_Impl__Group_3__13976 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_24_in_rule__RepositoryComponent_Impl__Group_3__1__Impl4004 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__2__Impl_in_rule__RepositoryComponent_Impl__Group_3__24035 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__3_in_rule__RepositoryComponent_Impl__Group_3__24038 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_2_in_rule__RepositoryComponent_Impl__Group_3__2__Impl4065 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__3__Impl_in_rule__RepositoryComponent_Impl__Group_3__34095 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__4_in_rule__RepositoryComponent_Impl__Group_3__34098 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0_in_rule__RepositoryComponent_Impl__Group_3__3__Impl4125 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3__4__Impl_in_rule__RepositoryComponent_Impl__Group_3__44156 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_25_in_rule__RepositoryComponent_Impl__Group_3__4__Impl4184 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__04225 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1_in_rule__RepositoryComponent_Impl__Group_3_3__04228 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__RepositoryComponent_Impl__Group_3_3__0__Impl4256 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_3_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_3_3__14287 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_1_in_rule__RepositoryComponent_Impl__Group_3_3__1__Impl4314 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__0__Impl_in_rule__RepositoryComponent_Impl__Group_4__04348 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__1_in_rule__RepositoryComponent_Impl__Group_4__04351 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_30_in_rule__RepositoryComponent_Impl__Group_4__0__Impl4379 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__1__Impl_in_rule__RepositoryComponent_Impl__Group_4__14410 = new BitSet(new long[]{0x0000040000000000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__2_in_rule__RepositoryComponent_Impl__Group_4__14413 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_4__1__Impl4441 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__2__Impl_in_rule__RepositoryComponent_Impl__Group_4__24472 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__3_in_rule__RepositoryComponent_Impl__Group_4__24475 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_2_in_rule__RepositoryComponent_Impl__Group_4__2__Impl4502 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__3__Impl_in_rule__RepositoryComponent_Impl__Group_4__34532 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__4_in_rule__RepositoryComponent_Impl__Group_4__34535 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0_in_rule__RepositoryComponent_Impl__Group_4__3__Impl4562 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4__4__Impl_in_rule__RepositoryComponent_Impl__Group_4__44593 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_4__4__Impl4621 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__04662 = new BitSet(new long[]{0x0000040000000000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1_in_rule__RepositoryComponent_Impl__Group_4_3__04665 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__RepositoryComponent_Impl__Group_4_3__0__Impl4693 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_4_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_4_3__14724 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_1_in_rule__RepositoryComponent_Impl__Group_4_3__1__Impl4751 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__0__Impl_in_rule__RepositoryComponent_Impl__Group_5__04785 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__1_in_rule__RepositoryComponent_Impl__Group_5__04788 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_31_in_rule__RepositoryComponent_Impl__Group_5__0__Impl4816 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__1__Impl_in_rule__RepositoryComponent_Impl__Group_5__14847 = new BitSet(new long[]{0x0000080000000000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__2_in_rule__RepositoryComponent_Impl__Group_5__14850 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__RepositoryComponent_Impl__Group_5__1__Impl4878 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__2__Impl_in_rule__RepositoryComponent_Impl__Group_5__24909 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__3_in_rule__RepositoryComponent_Impl__Group_5__24912 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_2_in_rule__RepositoryComponent_Impl__Group_5__2__Impl4939 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__3__Impl_in_rule__RepositoryComponent_Impl__Group_5__34969 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__4_in_rule__RepositoryComponent_Impl__Group_5__34972 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0_in_rule__RepositoryComponent_Impl__Group_5__3__Impl4999 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5__4__Impl_in_rule__RepositoryComponent_Impl__Group_5__45030 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__RepositoryComponent_Impl__Group_5__4__Impl5058 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__0__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__05099 = new BitSet(new long[]{0x0000080000000000L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1_in_rule__RepositoryComponent_Impl__Group_5_3__05102 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__RepositoryComponent_Impl__Group_5_3__0__Impl5130 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__Group_5_3__1__Impl_in_rule__RepositoryComponent_Impl__Group_5_3__15161 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_1_in_rule__RepositoryComponent_Impl__Group_5_3__1__Impl5188 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__Group__0__Impl_in_rule__CollectionDataType__Group__05222 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__Group__1_in_rule__CollectionDataType__Group__05225 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_32_in_rule__CollectionDataType__Group__0__Impl5253 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__Group__1__Impl_in_rule__CollectionDataType__Group__15284 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__Group__2_in_rule__CollectionDataType__Group__15287 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__NameAssignment_1_in_rule__CollectionDataType__Group__1__Impl5314 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__Group__2__Impl_in_rule__CollectionDataType__Group__25344 = new BitSet(new long[]{0x0000000200000000L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__Group__3_in_rule__CollectionDataType__Group__25347 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__CollectionDataType__Group__2__Impl5375 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__Group__3__Impl_in_rule__CollectionDataType__Group__35406 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__Group__4_in_rule__CollectionDataType__Group__35409 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_33_in_rule__CollectionDataType__Group__3__Impl5437 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__Group__4__Impl_in_rule__CollectionDataType__Group__45468 = new BitSet(new long[]{0x0000000000200000L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__Group__5_in_rule__CollectionDataType__Group__45471 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__InnerTypeAssignment_4_in_rule__CollectionDataType__Group__4__Impl5498 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CollectionDataType__Group__5__Impl_in_rule__CollectionDataType__Group__55528 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__CollectionDataType__Group__5__Impl5556 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group__0__Impl_in_rule__CompositeDataType__Group__05599 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group__1_in_rule__CompositeDataType__Group__05602 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_34_in_rule__CompositeDataType__Group__0__Impl5630 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group__1__Impl_in_rule__CompositeDataType__Group__15661 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group__2_in_rule__CompositeDataType__Group__15664 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__NameAssignment_1_in_rule__CompositeDataType__Group__1__Impl5691 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group__2__Impl_in_rule__CompositeDataType__Group__25721 = new BitSet(new long[]{0x0000001800200000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group__3_in_rule__CompositeDataType__Group__25724 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__CompositeDataType__Group__2__Impl5752 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group__3__Impl_in_rule__CompositeDataType__Group__35783 = new BitSet(new long[]{0x0000001800200000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group__4_in_rule__CompositeDataType__Group__35786 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__0_in_rule__CompositeDataType__Group__3__Impl5813 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group__4__Impl_in_rule__CompositeDataType__Group__45844 = new BitSet(new long[]{0x0000001800200000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group__5_in_rule__CompositeDataType__Group__45847 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__0_in_rule__CompositeDataType__Group__4__Impl5874 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group__5__Impl_in_rule__CompositeDataType__Group__55905 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__CompositeDataType__Group__5__Impl5933 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__0__Impl_in_rule__CompositeDataType__Group_3__05976 = new BitSet(new long[]{0x0000000001000000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__1_in_rule__CompositeDataType__Group_3__05979 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_35_in_rule__CompositeDataType__Group_3__0__Impl6007 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__1__Impl_in_rule__CompositeDataType__Group_3__16038 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__2_in_rule__CompositeDataType__Group_3__16041 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_24_in_rule__CompositeDataType__Group_3__1__Impl6069 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__2__Impl_in_rule__CompositeDataType__Group_3__26100 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__3_in_rule__CompositeDataType__Group_3__26103 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_2_in_rule__CompositeDataType__Group_3__2__Impl6130 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__3__Impl_in_rule__CompositeDataType__Group_3__36160 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__4_in_rule__CompositeDataType__Group_3__36163 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__0_in_rule__CompositeDataType__Group_3__3__Impl6190 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3__4__Impl_in_rule__CompositeDataType__Group_3__46221 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_25_in_rule__CompositeDataType__Group_3__4__Impl6249 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__0__Impl_in_rule__CompositeDataType__Group_3_3__06290 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__1_in_rule__CompositeDataType__Group_3_3__06293 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__CompositeDataType__Group_3_3__0__Impl6321 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_3_3__1__Impl_in_rule__CompositeDataType__Group_3_3__16352 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__ParentTypesAssignment_3_3_1_in_rule__CompositeDataType__Group_3_3__1__Impl6379 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__0__Impl_in_rule__CompositeDataType__Group_4__06413 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__1_in_rule__CompositeDataType__Group_4__06416 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_36_in_rule__CompositeDataType__Group_4__0__Impl6444 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__1__Impl_in_rule__CompositeDataType__Group_4__16475 = new BitSet(new long[]{0x0000010000000000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__2_in_rule__CompositeDataType__Group_4__16478 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__CompositeDataType__Group_4__1__Impl6506 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__2__Impl_in_rule__CompositeDataType__Group_4__26537 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__3_in_rule__CompositeDataType__Group_4__26540 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_2_in_rule__CompositeDataType__Group_4__2__Impl6567 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__3__Impl_in_rule__CompositeDataType__Group_4__36597 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__4_in_rule__CompositeDataType__Group_4__36600 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__0_in_rule__CompositeDataType__Group_4__3__Impl6627 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4__4__Impl_in_rule__CompositeDataType__Group_4__46658 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__CompositeDataType__Group_4__4__Impl6686 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__0__Impl_in_rule__CompositeDataType__Group_4_3__06727 = new BitSet(new long[]{0x0000010000000000L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__1_in_rule__CompositeDataType__Group_4_3__06730 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__CompositeDataType__Group_4_3__0__Impl6758 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__Group_4_3__1__Impl_in_rule__CompositeDataType__Group_4_3__16789 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_1_in_rule__CompositeDataType__Group_4_3__1__Impl6816 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__0__Impl_in_rule__PrimitiveDataType__Group__06850 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__1_in_rule__PrimitiveDataType__Group__06853 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_37_in_rule__PrimitiveDataType__Group__0__Impl6881 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__1__Impl_in_rule__PrimitiveDataType__Group__16912 = new BitSet(new long[]{0x0000004000000000L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__2_in_rule__PrimitiveDataType__Group__16915 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__PrimitiveDataType__Group__1__Impl6943 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__2__Impl_in_rule__PrimitiveDataType__Group__26974 = new BitSet(new long[]{0x000000000007F000L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__3_in_rule__PrimitiveDataType__Group__26977 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_38_in_rule__PrimitiveDataType__Group__2__Impl7005 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__3__Impl_in_rule__PrimitiveDataType__Group__37036 = new BitSet(new long[]{0x0000008000000000L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__4_in_rule__PrimitiveDataType__Group__37039 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__TypeAssignment_3_in_rule__PrimitiveDataType__Group__3__Impl7066 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__4__Impl_in_rule__PrimitiveDataType__Group__47096 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__5_in_rule__PrimitiveDataType__Group__47099 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_39_in_rule__PrimitiveDataType__Group__4__Impl7127 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__5__Impl_in_rule__PrimitiveDataType__Group__57158 = new BitSet(new long[]{0x0000000000200000L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__6_in_rule__PrimitiveDataType__Group__57161 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__NameAssignment_5_in_rule__PrimitiveDataType__Group__5__Impl7188 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__PrimitiveDataType__Group__6__Impl_in_rule__PrimitiveDataType__Group__67218 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__PrimitiveDataType__Group__6__Impl7246 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__0__Impl_in_rule__InnerDeclaration__Group__07291 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__1_in_rule__InnerDeclaration__Group__07294 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_40_in_rule__InnerDeclaration__Group__0__Impl7322 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__1__Impl_in_rule__InnerDeclaration__Group__17353 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__2_in_rule__InnerDeclaration__Group__17356 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__NameAssignment_1_in_rule__InnerDeclaration__Group__1__Impl7383 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__2__Impl_in_rule__InnerDeclaration__Group__27413 = new BitSet(new long[]{0x0000020000000000L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__3_in_rule__InnerDeclaration__Group__27416 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__InnerDeclaration__Group__2__Impl7444 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__3__Impl_in_rule__InnerDeclaration__Group__37475 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__4_in_rule__InnerDeclaration__Group__37478 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_41_in_rule__InnerDeclaration__Group__3__Impl7506 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__4__Impl_in_rule__InnerDeclaration__Group__47537 = new BitSet(new long[]{0x0000000000200000L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__5_in_rule__InnerDeclaration__Group__47540 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__DataTypeAssignment_4_in_rule__InnerDeclaration__Group__4__Impl7567 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__InnerDeclaration__Group__5__Impl_in_rule__InnerDeclaration__Group__57597 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__InnerDeclaration__Group__5__Impl7625 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__Group__0__Impl_in_rule__Signature__Group__07668 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__Signature__Group__1_in_rule__Signature__Group__07671 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__Alternatives_0_in_rule__Signature__Group__0__Impl7698 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__Group__1__Impl_in_rule__Signature__Group__17728 = new BitSet(new long[]{0x0000000001000000L});
+        public static final BitSet FOLLOW_rule__Signature__Group__2_in_rule__Signature__Group__17731 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__NameAssignment_1_in_rule__Signature__Group__1__Impl7758 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__Group__2__Impl_in_rule__Signature__Group__27788 = new BitSet(new long[]{0x0000000002000030L});
+        public static final BitSet FOLLOW_rule__Signature__Group__3_in_rule__Signature__Group__27791 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_24_in_rule__Signature__Group__2__Impl7819 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__Group__3__Impl_in_rule__Signature__Group__37850 = new BitSet(new long[]{0x0000000002000030L});
+        public static final BitSet FOLLOW_rule__Signature__Group__4_in_rule__Signature__Group__37853 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__Group_3__0_in_rule__Signature__Group__3__Impl7880 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__Group__4__Impl_in_rule__Signature__Group__47911 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_25_in_rule__Signature__Group__4__Impl7939 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__Group_3__0__Impl_in_rule__Signature__Group_3__07980 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_rule__Signature__Group_3__1_in_rule__Signature__Group_3__07983 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__ParametersAssignment_3_0_in_rule__Signature__Group_3__0__Impl8010 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__Group_3__1__Impl_in_rule__Signature__Group_3__18040 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__Group_3_1__0_in_rule__Signature__Group_3__1__Impl8067 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__Signature__Group_3_1__0__Impl_in_rule__Signature__Group_3_1__08102 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__Signature__Group_3_1__1_in_rule__Signature__Group_3_1__08105 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__Signature__Group_3_1__0__Impl8133 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__Group_3_1__1__Impl_in_rule__Signature__Group_3_1__18164 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Signature__ParametersAssignment_3_1_1_in_rule__Signature__Group_3_1__1__Impl8191 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Parameter__Group__0__Impl_in_rule__Parameter__Group__08225 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__Parameter__Group__1_in_rule__Parameter__Group__08228 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Parameter__DataTypeAssignment_0_in_rule__Parameter__Group__0__Impl8255 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Parameter__Group__1__Impl_in_rule__Parameter__Group__18285 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__Parameter__NameAssignment_1_in_rule__Parameter__Group__1__Impl8312 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedRole__Group__0__Impl_in_rule__ProvidedRole__Group__08346 = new BitSet(new long[]{0x0000040000000000L});
+        public static final BitSet FOLLOW_rule__ProvidedRole__Group__1_in_rule__ProvidedRole__Group__08349 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedRole__Group__1__Impl_in_rule__ProvidedRole__Group__18407 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__ProvidedRole__Group__2_in_rule__ProvidedRole__Group__18410 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_42_in_rule__ProvidedRole__Group__1__Impl8438 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedRole__Group__2__Impl_in_rule__ProvidedRole__Group__28469 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedRole__Group_2__0_in_rule__ProvidedRole__Group__2__Impl8496 = new BitSet(new long[]{0x0000000000000032L});
+        public static final BitSet FOLLOW_rule__ProvidedRole__Group_2__0__Impl_in_rule__ProvidedRole__Group_2__08533 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_rule__ProvidedRole__Group_2__1_in_rule__ProvidedRole__Group_2__08536 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedRole__InterfaceAssignment_2_0_in_rule__ProvidedRole__Group_2__0__Impl8563 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedRole__Group_2__1__Impl_in_rule__ProvidedRole__Group_2__18593 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__ProvidedRole__Group_2__1__Impl8622 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredRole__Group__0__Impl_in_rule__RequiredRole__Group__08659 = new BitSet(new long[]{0x0000080000000000L});
+        public static final BitSet FOLLOW_rule__RequiredRole__Group__1_in_rule__RequiredRole__Group__08662 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredRole__Group__1__Impl_in_rule__RequiredRole__Group__18720 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__RequiredRole__Group__2_in_rule__RequiredRole__Group__18723 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_43_in_rule__RequiredRole__Group__1__Impl8751 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredRole__Group__2__Impl_in_rule__RequiredRole__Group__28782 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredRole__Group_2__0_in_rule__RequiredRole__Group__2__Impl8809 = new BitSet(new long[]{0x0000000000000032L});
+        public static final BitSet FOLLOW_rule__RequiredRole__Group_2__0__Impl_in_rule__RequiredRole__Group_2__08846 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_rule__RequiredRole__Group_2__1_in_rule__RequiredRole__Group_2__08849 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredRole__InterfaceAssignment_2_0_in_rule__RequiredRole__Group_2__0__Impl8876 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredRole__Group_2__1__Impl_in_rule__RequiredRole__Group_2__18906 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__RequiredRole__Group_2__1__Impl8935 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__0__Impl_in_rule__BasicComponent__Group__08972 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__1_in_rule__BasicComponent__Group__08975 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_44_in_rule__BasicComponent__Group__0__Impl9003 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__1__Impl_in_rule__BasicComponent__Group__19034 = new BitSet(new long[]{0x00000C0000100000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__2_in_rule__BasicComponent__Group__19037 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__NameAssignment_1_in_rule__BasicComponent__Group__1__Impl9064 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__2__Impl_in_rule__BasicComponent__Group__29094 = new BitSet(new long[]{0x00000C0000100000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__3_in_rule__BasicComponent__Group__29097 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__0_in_rule__BasicComponent__Group__2__Impl9124 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__3__Impl_in_rule__BasicComponent__Group__39155 = new BitSet(new long[]{0x00000C0000100000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__4_in_rule__BasicComponent__Group__39158 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__0_in_rule__BasicComponent__Group__3__Impl9185 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__4__Impl_in_rule__BasicComponent__Group__49216 = new BitSet(new long[]{0x0000000020200000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__5_in_rule__BasicComponent__Group__49219 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__BasicComponent__Group__4__Impl9247 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__5__Impl_in_rule__BasicComponent__Group__59278 = new BitSet(new long[]{0x0000000020200000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__6_in_rule__BasicComponent__Group__59281 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__0_in_rule__BasicComponent__Group__5__Impl9308 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group__6__Impl_in_rule__BasicComponent__Group__69339 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__BasicComponent__Group__6__Impl9367 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__0__Impl_in_rule__BasicComponent__Group_2__09412 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__1_in_rule__BasicComponent__Group_2__09415 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_0_in_rule__BasicComponent__Group_2__0__Impl9442 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_2__1__Impl_in_rule__BasicComponent__Group_2__19472 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__0_in_rule__BasicComponent__Group_2__1__Impl9499 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__0__Impl_in_rule__BasicComponent__Group_2_1__09534 = new BitSet(new long[]{0x0000040000000000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__1_in_rule__BasicComponent__Group_2_1__09537 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__BasicComponent__Group_2_1__0__Impl9565 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_2_1__1__Impl_in_rule__BasicComponent__Group_2_1__19596 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__ProvidedRolesAssignment_2_1_1_in_rule__BasicComponent__Group_2_1__1__Impl9623 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__0__Impl_in_rule__BasicComponent__Group_3__09657 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__1_in_rule__BasicComponent__Group_3__09660 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_0_in_rule__BasicComponent__Group_3__0__Impl9687 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_3__1__Impl_in_rule__BasicComponent__Group_3__19717 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__0_in_rule__BasicComponent__Group_3__1__Impl9744 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__0__Impl_in_rule__BasicComponent__Group_3_1__09779 = new BitSet(new long[]{0x0000080000000000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__1_in_rule__BasicComponent__Group_3_1__09782 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__BasicComponent__Group_3_1__0__Impl9810 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_3_1__1__Impl_in_rule__BasicComponent__Group_3_1__19841 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__RequiredRolesAssignment_3_1_1_in_rule__BasicComponent__Group_3_1__1__Impl9868 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__0__Impl_in_rule__BasicComponent__Group_5__09902 = new BitSet(new long[]{0x0000000001000000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__1_in_rule__BasicComponent__Group_5__09905 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_29_in_rule__BasicComponent__Group_5__0__Impl9933 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__1__Impl_in_rule__BasicComponent__Group_5__19964 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__2_in_rule__BasicComponent__Group_5__19967 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_24_in_rule__BasicComponent__Group_5__1__Impl9995 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__2__Impl_in_rule__BasicComponent__Group_5__210026 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__3_in_rule__BasicComponent__Group_5__210029 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__RelationshipAssignment_5_2_in_rule__BasicComponent__Group_5__2__Impl10056 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__3__Impl_in_rule__BasicComponent__Group_5__310086 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__4_in_rule__BasicComponent__Group_5__310089 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__0_in_rule__BasicComponent__Group_5__3__Impl10116 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5__4__Impl_in_rule__BasicComponent__Group_5__410147 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_25_in_rule__BasicComponent__Group_5__4__Impl10175 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__0__Impl_in_rule__BasicComponent__Group_5_3__010216 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__1_in_rule__BasicComponent__Group_5_3__010219 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__BasicComponent__Group_5_3__0__Impl10247 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__Group_5_3__1__Impl_in_rule__BasicComponent__Group_5_3__110278 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__BasicComponent__RelationshipAssignment_5_3_1_in_rule__BasicComponent__Group_5_3__1__Impl10305 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__0__Impl_in_rule__CompositeComponent__Group__010339 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__1_in_rule__CompositeComponent__Group__010342 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_45_in_rule__CompositeComponent__Group__0__Impl10370 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__1__Impl_in_rule__CompositeComponent__Group__110401 = new BitSet(new long[]{0x00000C0000100000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__2_in_rule__CompositeComponent__Group__110404 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__NameAssignment_1_in_rule__CompositeComponent__Group__1__Impl10431 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__2__Impl_in_rule__CompositeComponent__Group__210461 = new BitSet(new long[]{0x00000C0000100000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__3_in_rule__CompositeComponent__Group__210464 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__0_in_rule__CompositeComponent__Group__2__Impl10491 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__3__Impl_in_rule__CompositeComponent__Group__310522 = new BitSet(new long[]{0x00000C0000100000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__4_in_rule__CompositeComponent__Group__310525 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__0_in_rule__CompositeComponent__Group__3__Impl10552 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__4__Impl_in_rule__CompositeComponent__Group__410583 = new BitSet(new long[]{0x0000400020200000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__5_in_rule__CompositeComponent__Group__410586 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__CompositeComponent__Group__4__Impl10614 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__5__Impl_in_rule__CompositeComponent__Group__510645 = new BitSet(new long[]{0x0000400020200000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__6_in_rule__CompositeComponent__Group__510648 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__0_in_rule__CompositeComponent__Group__5__Impl10675 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__6__Impl_in_rule__CompositeComponent__Group__610706 = new BitSet(new long[]{0x0000400020200000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__7_in_rule__CompositeComponent__Group__610709 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__0_in_rule__CompositeComponent__Group__6__Impl10736 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group__7__Impl_in_rule__CompositeComponent__Group__710767 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__CompositeComponent__Group__7__Impl10795 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__0__Impl_in_rule__CompositeComponent__Group_2__010842 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__1_in_rule__CompositeComponent__Group_2__010845 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_0_in_rule__CompositeComponent__Group_2__0__Impl10872 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2__1__Impl_in_rule__CompositeComponent__Group_2__110902 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__0_in_rule__CompositeComponent__Group_2__1__Impl10929 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__0__Impl_in_rule__CompositeComponent__Group_2_1__010964 = new BitSet(new long[]{0x0000040000000000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__1_in_rule__CompositeComponent__Group_2_1__010967 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__CompositeComponent__Group_2_1__0__Impl10995 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_2_1__1__Impl_in_rule__CompositeComponent__Group_2_1__111026 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__ProvidedRolesAssignment_2_1_1_in_rule__CompositeComponent__Group_2_1__1__Impl11053 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__0__Impl_in_rule__CompositeComponent__Group_3__011087 = new BitSet(new long[]{0x0000000004000000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__1_in_rule__CompositeComponent__Group_3__011090 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_0_in_rule__CompositeComponent__Group_3__0__Impl11117 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3__1__Impl_in_rule__CompositeComponent__Group_3__111147 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__0_in_rule__CompositeComponent__Group_3__1__Impl11174 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__0__Impl_in_rule__CompositeComponent__Group_3_1__011209 = new BitSet(new long[]{0x0000080000000000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__1_in_rule__CompositeComponent__Group_3_1__011212 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__CompositeComponent__Group_3_1__0__Impl11240 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_3_1__1__Impl_in_rule__CompositeComponent__Group_3_1__111271 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__RequiredRolesAssignment_3_1_1_in_rule__CompositeComponent__Group_3_1__1__Impl11298 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__0__Impl_in_rule__CompositeComponent__Group_5__011332 = new BitSet(new long[]{0x0000000001000000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__1_in_rule__CompositeComponent__Group_5__011335 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_29_in_rule__CompositeComponent__Group_5__0__Impl11363 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__1__Impl_in_rule__CompositeComponent__Group_5__111394 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__2_in_rule__CompositeComponent__Group_5__111397 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_24_in_rule__CompositeComponent__Group_5__1__Impl11425 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__2__Impl_in_rule__CompositeComponent__Group_5__211456 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__3_in_rule__CompositeComponent__Group_5__211459 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_2_in_rule__CompositeComponent__Group_5__2__Impl11486 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__3__Impl_in_rule__CompositeComponent__Group_5__311516 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__4_in_rule__CompositeComponent__Group_5__311519 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__0_in_rule__CompositeComponent__Group_5__3__Impl11546 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5__4__Impl_in_rule__CompositeComponent__Group_5__411577 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_25_in_rule__CompositeComponent__Group_5__4__Impl11605 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__0__Impl_in_rule__CompositeComponent__Group_5_3__011646 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__1_in_rule__CompositeComponent__Group_5_3__011649 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__CompositeComponent__Group_5_3__0__Impl11677 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_5_3__1__Impl_in_rule__CompositeComponent__Group_5_3__111708 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__RelationshipAssignment_5_3_1_in_rule__CompositeComponent__Group_5_3__1__Impl11735 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__0__Impl_in_rule__CompositeComponent__Group_6__011769 = new BitSet(new long[]{0x0001000000000000L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__1_in_rule__CompositeComponent__Group_6__011772 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_46_in_rule__CompositeComponent__Group_6__0__Impl11800 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__Group_6__1__Impl_in_rule__CompositeComponent__Group_6__111831 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__CompositeComponent__AssemblyAssignment_6_1_in_rule__CompositeComponent__Group_6__1__Impl11858 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__0__Impl_in_rule__SubSystem__Group__011892 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__1_in_rule__SubSystem__Group__011895 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_47_in_rule__SubSystem__Group__0__Impl11923 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__1__Impl_in_rule__SubSystem__Group__111954 = new BitSet(new long[]{0x00000000C0100000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__2_in_rule__SubSystem__Group__111957 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__NameAssignment_1_in_rule__SubSystem__Group__1__Impl11984 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__2__Impl_in_rule__SubSystem__Group__212014 = new BitSet(new long[]{0x00000000C0100000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__3_in_rule__SubSystem__Group__212017 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2__0_in_rule__SubSystem__Group__2__Impl12044 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__3__Impl_in_rule__SubSystem__Group__312075 = new BitSet(new long[]{0x00000000C0100000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__4_in_rule__SubSystem__Group__312078 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3__0_in_rule__SubSystem__Group__3__Impl12105 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__4__Impl_in_rule__SubSystem__Group__412136 = new BitSet(new long[]{0x0000400020200000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__5_in_rule__SubSystem__Group__412139 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__SubSystem__Group__4__Impl12167 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__5__Impl_in_rule__SubSystem__Group__512198 = new BitSet(new long[]{0x0000400020200000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__6_in_rule__SubSystem__Group__512201 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5__0_in_rule__SubSystem__Group__5__Impl12228 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__6__Impl_in_rule__SubSystem__Group__612259 = new BitSet(new long[]{0x0000400020200000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__7_in_rule__SubSystem__Group__612262 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_6__0_in_rule__SubSystem__Group__6__Impl12289 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group__7__Impl_in_rule__SubSystem__Group__712320 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__SubSystem__Group__7__Impl12348 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2__0__Impl_in_rule__SubSystem__Group_2__012395 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2__1_in_rule__SubSystem__Group_2__012398 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_30_in_rule__SubSystem__Group_2__0__Impl12426 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2__1__Impl_in_rule__SubSystem__Group_2__112457 = new BitSet(new long[]{0x0000040000000000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2__2_in_rule__SubSystem__Group_2__112460 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__SubSystem__Group_2__1__Impl12488 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2__2__Impl_in_rule__SubSystem__Group_2__212519 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2__3_in_rule__SubSystem__Group_2__212522 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_2_in_rule__SubSystem__Group_2__2__Impl12549 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2__3__Impl_in_rule__SubSystem__Group_2__312579 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2__4_in_rule__SubSystem__Group_2__312582 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__0_in_rule__SubSystem__Group_2__3__Impl12609 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2__4__Impl_in_rule__SubSystem__Group_2__412640 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__SubSystem__Group_2__4__Impl12668 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__0__Impl_in_rule__SubSystem__Group_2_3__012709 = new BitSet(new long[]{0x0000040000000000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__1_in_rule__SubSystem__Group_2_3__012712 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__SubSystem__Group_2_3__0__Impl12740 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_2_3__1__Impl_in_rule__SubSystem__Group_2_3__112771 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__ProvidedRolesAssignment_2_3_1_in_rule__SubSystem__Group_2_3__1__Impl12798 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3__0__Impl_in_rule__SubSystem__Group_3__012832 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3__1_in_rule__SubSystem__Group_3__012835 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_31_in_rule__SubSystem__Group_3__0__Impl12863 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3__1__Impl_in_rule__SubSystem__Group_3__112894 = new BitSet(new long[]{0x0000080000000000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3__2_in_rule__SubSystem__Group_3__112897 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__SubSystem__Group_3__1__Impl12925 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3__2__Impl_in_rule__SubSystem__Group_3__212956 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3__3_in_rule__SubSystem__Group_3__212959 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_2_in_rule__SubSystem__Group_3__2__Impl12986 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3__3__Impl_in_rule__SubSystem__Group_3__313016 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3__4_in_rule__SubSystem__Group_3__313019 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__0_in_rule__SubSystem__Group_3__3__Impl13046 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3__4__Impl_in_rule__SubSystem__Group_3__413077 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__SubSystem__Group_3__4__Impl13105 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__0__Impl_in_rule__SubSystem__Group_3_3__013146 = new BitSet(new long[]{0x0000080000000000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__1_in_rule__SubSystem__Group_3_3__013149 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__SubSystem__Group_3_3__0__Impl13177 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_3_3__1__Impl_in_rule__SubSystem__Group_3_3__113208 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__RequiredRolesAssignment_3_3_1_in_rule__SubSystem__Group_3_3__1__Impl13235 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5__0__Impl_in_rule__SubSystem__Group_5__013269 = new BitSet(new long[]{0x0000000001000000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5__1_in_rule__SubSystem__Group_5__013272 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_29_in_rule__SubSystem__Group_5__0__Impl13300 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5__1__Impl_in_rule__SubSystem__Group_5__113331 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5__2_in_rule__SubSystem__Group_5__113334 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_24_in_rule__SubSystem__Group_5__1__Impl13362 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5__2__Impl_in_rule__SubSystem__Group_5__213393 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5__3_in_rule__SubSystem__Group_5__213396 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__RelationshipAssignment_5_2_in_rule__SubSystem__Group_5__2__Impl13423 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5__3__Impl_in_rule__SubSystem__Group_5__313453 = new BitSet(new long[]{0x0000000006000000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5__4_in_rule__SubSystem__Group_5__313456 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__0_in_rule__SubSystem__Group_5__3__Impl13483 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5__4__Impl_in_rule__SubSystem__Group_5__413514 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_25_in_rule__SubSystem__Group_5__4__Impl13542 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__0__Impl_in_rule__SubSystem__Group_5_3__013583 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__1_in_rule__SubSystem__Group_5_3__013586 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__SubSystem__Group_5_3__0__Impl13614 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_5_3__1__Impl_in_rule__SubSystem__Group_5_3__113645 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__RelationshipAssignment_5_3_1_in_rule__SubSystem__Group_5_3__1__Impl13672 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_6__0__Impl_in_rule__SubSystem__Group_6__013706 = new BitSet(new long[]{0x0001000000000000L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_6__1_in_rule__SubSystem__Group_6__013709 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_46_in_rule__SubSystem__Group_6__0__Impl13737 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__Group_6__1__Impl_in_rule__SubSystem__Group_6__113768 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__SubSystem__AssemblyAssignment_6_1_in_rule__SubSystem__Group_6__1__Impl13795 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__0__Impl_in_rule__ComposedStructureAssembly__Group__013829 = new BitSet(new long[]{0x0001000000000000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__1_in_rule__ComposedStructureAssembly__Group__013832 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__1__Impl_in_rule__ComposedStructureAssembly__Group__113890 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__2_in_rule__ComposedStructureAssembly__Group__113893 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_48_in_rule__ComposedStructureAssembly__Group__1__Impl13921 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__2__Impl_in_rule__ComposedStructureAssembly__Group__213952 = new BitSet(new long[]{0x001E000000200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__3_in_rule__ComposedStructureAssembly__Group__213955 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group__2__Impl13983 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__3__Impl_in_rule__ComposedStructureAssembly__Group__314014 = new BitSet(new long[]{0x001E000000200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__4_in_rule__ComposedStructureAssembly__Group__314017 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__0_in_rule__ComposedStructureAssembly__Group__3__Impl14044 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__4__Impl_in_rule__ComposedStructureAssembly__Group__414075 = new BitSet(new long[]{0x001E000000200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__5_in_rule__ComposedStructureAssembly__Group__414078 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__0_in_rule__ComposedStructureAssembly__Group__4__Impl14105 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__5__Impl_in_rule__ComposedStructureAssembly__Group__514136 = new BitSet(new long[]{0x001E000000200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__6_in_rule__ComposedStructureAssembly__Group__514139 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__0_in_rule__ComposedStructureAssembly__Group__5__Impl14166 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__6__Impl_in_rule__ComposedStructureAssembly__Group__614197 = new BitSet(new long[]{0x001E000000200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__7_in_rule__ComposedStructureAssembly__Group__614200 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__0_in_rule__ComposedStructureAssembly__Group__6__Impl14227 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group__7__Impl_in_rule__ComposedStructureAssembly__Group__714258 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group__7__Impl14286 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3__014333 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__1_in_rule__ComposedStructureAssembly__Group_3__014336 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_49_in_rule__ComposedStructureAssembly__Group_3__0__Impl14364 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3__114395 = new BitSet(new long[]{0x0020000000000000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__2_in_rule__ComposedStructureAssembly__Group_3__114398 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_3__1__Impl14426 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__2__Impl_in_rule__ComposedStructureAssembly__Group_3__214457 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__3_in_rule__ComposedStructureAssembly__Group_3__214460 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_2_in_rule__ComposedStructureAssembly__Group_3__2__Impl14487 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__3__Impl_in_rule__ComposedStructureAssembly__Group_3__314517 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__4_in_rule__ComposedStructureAssembly__Group_3__314520 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0_in_rule__ComposedStructureAssembly__Group_3__3__Impl14547 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3__4__Impl_in_rule__ComposedStructureAssembly__Group_3__414578 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_3__4__Impl14606 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__0__Impl_in_rule__ComposedStructureAssembly__Group_3_3__014647 = new BitSet(new long[]{0x0020000000000000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1_in_rule__ComposedStructureAssembly__Group_3_3__014650 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__ComposedStructureAssembly__Group_3_3__0__Impl14678 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_3_3__1__Impl_in_rule__ComposedStructureAssembly__Group_3_3__114709 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_1_in_rule__ComposedStructureAssembly__Group_3_3__1__Impl14736 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__0__Impl_in_rule__ComposedStructureAssembly__Group_4__014770 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__1_in_rule__ComposedStructureAssembly__Group_4__014773 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_50_in_rule__ComposedStructureAssembly__Group_4__0__Impl14801 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__1__Impl_in_rule__ComposedStructureAssembly__Group_4__114832 = new BitSet(new long[]{0x0080000000000000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__2_in_rule__ComposedStructureAssembly__Group_4__114835 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_4__1__Impl14863 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__2__Impl_in_rule__ComposedStructureAssembly__Group_4__214894 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__3_in_rule__ComposedStructureAssembly__Group_4__214897 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_2_in_rule__ComposedStructureAssembly__Group_4__2__Impl14924 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__3__Impl_in_rule__ComposedStructureAssembly__Group_4__314954 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__4_in_rule__ComposedStructureAssembly__Group_4__314957 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0_in_rule__ComposedStructureAssembly__Group_4__3__Impl14984 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4__4__Impl_in_rule__ComposedStructureAssembly__Group_4__415015 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_4__4__Impl15043 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__0__Impl_in_rule__ComposedStructureAssembly__Group_4_3__015084 = new BitSet(new long[]{0x0080000000000000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1_in_rule__ComposedStructureAssembly__Group_4_3__015087 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__ComposedStructureAssembly__Group_4_3__0__Impl15115 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_4_3__1__Impl_in_rule__ComposedStructureAssembly__Group_4_3__115146 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_1_in_rule__ComposedStructureAssembly__Group_4_3__1__Impl15173 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__0__Impl_in_rule__ComposedStructureAssembly__Group_5__015207 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__1_in_rule__ComposedStructureAssembly__Group_5__015210 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_51_in_rule__ComposedStructureAssembly__Group_5__0__Impl15238 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__1__Impl_in_rule__ComposedStructureAssembly__Group_5__115269 = new BitSet(new long[]{0x1000000000000000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__2_in_rule__ComposedStructureAssembly__Group_5__115272 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_5__1__Impl15300 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__2__Impl_in_rule__ComposedStructureAssembly__Group_5__215331 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__3_in_rule__ComposedStructureAssembly__Group_5__215334 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_2_in_rule__ComposedStructureAssembly__Group_5__2__Impl15361 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__3__Impl_in_rule__ComposedStructureAssembly__Group_5__315391 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__4_in_rule__ComposedStructureAssembly__Group_5__315394 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0_in_rule__ComposedStructureAssembly__Group_5__3__Impl15421 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5__4__Impl_in_rule__ComposedStructureAssembly__Group_5__415452 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_5__4__Impl15480 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__0__Impl_in_rule__ComposedStructureAssembly__Group_5_3__015521 = new BitSet(new long[]{0x1000000000000000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1_in_rule__ComposedStructureAssembly__Group_5_3__015524 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__ComposedStructureAssembly__Group_5_3__0__Impl15552 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_5_3__1__Impl_in_rule__ComposedStructureAssembly__Group_5_3__115583 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_1_in_rule__ComposedStructureAssembly__Group_5_3__1__Impl15610 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__0__Impl_in_rule__ComposedStructureAssembly__Group_6__015644 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__1_in_rule__ComposedStructureAssembly__Group_6__015647 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_52_in_rule__ComposedStructureAssembly__Group_6__0__Impl15675 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__1__Impl_in_rule__ComposedStructureAssembly__Group_6__115706 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__2_in_rule__ComposedStructureAssembly__Group_6__115709 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__ComposedStructureAssembly__Group_6__1__Impl15737 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__2__Impl_in_rule__ComposedStructureAssembly__Group_6__215768 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__3_in_rule__ComposedStructureAssembly__Group_6__215771 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_2_in_rule__ComposedStructureAssembly__Group_6__2__Impl15798 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__3__Impl_in_rule__ComposedStructureAssembly__Group_6__315828 = new BitSet(new long[]{0x0000000004200000L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__4_in_rule__ComposedStructureAssembly__Group_6__315831 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0_in_rule__ComposedStructureAssembly__Group_6__3__Impl15858 = new BitSet(new long[]{0x0000000004000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6__4__Impl_in_rule__ComposedStructureAssembly__Group_6__415889 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__ComposedStructureAssembly__Group_6__4__Impl15917 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__0__Impl_in_rule__ComposedStructureAssembly__Group_6_3__015958 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1_in_rule__ComposedStructureAssembly__Group_6_3__015961 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_rule__ComposedStructureAssembly__Group_6_3__0__Impl15989 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__Group_6_3__1__Impl_in_rule__ComposedStructureAssembly__Group_6_3__116020 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_1_in_rule__ComposedStructureAssembly__Group_6_3__1__Impl16047 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__Group__0__Impl_in_rule__AssemblyContext__Group__016081 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__Group__1_in_rule__AssemblyContext__Group__016084 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_53_in_rule__AssemblyContext__Group__0__Impl16112 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__Group__1__Impl_in_rule__AssemblyContext__Group__116143 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__Group__2_in_rule__AssemblyContext__Group__116146 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__NameAssignment_1_in_rule__AssemblyContext__Group__1__Impl16173 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__Group__2__Impl_in_rule__AssemblyContext__Group__216203 = new BitSet(new long[]{0x0040000000000000L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__Group__3_in_rule__AssemblyContext__Group__216206 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__AssemblyContext__Group__2__Impl16234 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__Group__3__Impl_in_rule__AssemblyContext__Group__316265 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__Group__4_in_rule__AssemblyContext__Group__316268 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_54_in_rule__AssemblyContext__Group__3__Impl16296 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__Group__4__Impl_in_rule__AssemblyContext__Group__416327 = new BitSet(new long[]{0x0000000000200000L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__Group__5_in_rule__AssemblyContext__Group__416330 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__EncapsulatedComponentAssignment_4_in_rule__AssemblyContext__Group__4__Impl16357 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyContext__Group__5__Impl_in_rule__AssemblyContext__Group__516387 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__AssemblyContext__Group__5__Impl16415 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__0__Impl_in_rule__AssemblyConnector__Group__016458 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__1_in_rule__AssemblyConnector__Group__016461 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_55_in_rule__AssemblyConnector__Group__0__Impl16489 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__1__Impl_in_rule__AssemblyConnector__Group__116520 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__2_in_rule__AssemblyConnector__Group__116523 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__NameAssignment_1_in_rule__AssemblyConnector__Group__1__Impl16550 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__2__Impl_in_rule__AssemblyConnector__Group__216580 = new BitSet(new long[]{0x0100000000000000L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__3_in_rule__AssemblyConnector__Group__216583 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__AssemblyConnector__Group__2__Impl16611 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__3__Impl_in_rule__AssemblyConnector__Group__316642 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__4_in_rule__AssemblyConnector__Group__316645 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_56_in_rule__AssemblyConnector__Group__3__Impl16673 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__4__Impl_in_rule__AssemblyConnector__Group__416704 = new BitSet(new long[]{0x0200000000000000L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__5_in_rule__AssemblyConnector__Group__416707 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__RequiredRoleAssignment_4_in_rule__AssemblyConnector__Group__4__Impl16734 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__5__Impl_in_rule__AssemblyConnector__Group__516764 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__6_in_rule__AssemblyConnector__Group__516767 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_57_in_rule__AssemblyConnector__Group__5__Impl16795 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__6__Impl_in_rule__AssemblyConnector__Group__616826 = new BitSet(new long[]{0x0400000000000000L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__7_in_rule__AssemblyConnector__Group__616829 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__ProvidedRoleAssignment_6_in_rule__AssemblyConnector__Group__6__Impl16856 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__7__Impl_in_rule__AssemblyConnector__Group__716886 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__8_in_rule__AssemblyConnector__Group__716889 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_58_in_rule__AssemblyConnector__Group__7__Impl16917 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__8__Impl_in_rule__AssemblyConnector__Group__816948 = new BitSet(new long[]{0x0800000000000000L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__9_in_rule__AssemblyConnector__Group__816951 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_8_in_rule__AssemblyConnector__Group__8__Impl16978 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__9__Impl_in_rule__AssemblyConnector__Group__917008 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__10_in_rule__AssemblyConnector__Group__917011 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_59_in_rule__AssemblyConnector__Group__9__Impl17039 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__10__Impl_in_rule__AssemblyConnector__Group__1017070 = new BitSet(new long[]{0x0000000000200000L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__11_in_rule__AssemblyConnector__Group__1017073 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__RequiringAssemblyContextAssignment_10_in_rule__AssemblyConnector__Group__10__Impl17100 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__AssemblyConnector__Group__11__Impl_in_rule__AssemblyConnector__Group__1117130 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__AssemblyConnector__Group__11__Impl17158 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__0__Impl_in_rule__ProvidedDelegationConnector__Group__017213 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__1_in_rule__ProvidedDelegationConnector__Group__017216 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_60_in_rule__ProvidedDelegationConnector__Group__0__Impl17244 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__1__Impl_in_rule__ProvidedDelegationConnector__Group__117275 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__2_in_rule__ProvidedDelegationConnector__Group__117278 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__NameAssignment_1_in_rule__ProvidedDelegationConnector__Group__1__Impl17305 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__2__Impl_in_rule__ProvidedDelegationConnector__Group__217335 = new BitSet(new long[]{0x2000000000000000L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__3_in_rule__ProvidedDelegationConnector__Group__217338 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__ProvidedDelegationConnector__Group__2__Impl17366 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__3__Impl_in_rule__ProvidedDelegationConnector__Group__317397 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__4_in_rule__ProvidedDelegationConnector__Group__317400 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_61_in_rule__ProvidedDelegationConnector__Group__3__Impl17428 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__4__Impl_in_rule__ProvidedDelegationConnector__Group__417459 = new BitSet(new long[]{0x4000000000000000L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__5_in_rule__ProvidedDelegationConnector__Group__417462 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__AssemblyContextAssignment_4_in_rule__ProvidedDelegationConnector__Group__4__Impl17489 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__5__Impl_in_rule__ProvidedDelegationConnector__Group__517519 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__6_in_rule__ProvidedDelegationConnector__Group__517522 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_62_in_rule__ProvidedDelegationConnector__Group__5__Impl17550 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__6__Impl_in_rule__ProvidedDelegationConnector__Group__617581 = new BitSet(new long[]{0x8000000000000000L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__7_in_rule__ProvidedDelegationConnector__Group__617584 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_6_in_rule__ProvidedDelegationConnector__Group__6__Impl17611 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__7__Impl_in_rule__ProvidedDelegationConnector__Group__717641 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__8_in_rule__ProvidedDelegationConnector__Group__717644 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_63_in_rule__ProvidedDelegationConnector__Group__7__Impl17672 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__8__Impl_in_rule__ProvidedDelegationConnector__Group__817703 = new BitSet(new long[]{0x0000000000200000L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__9_in_rule__ProvidedDelegationConnector__Group__817706 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_8_in_rule__ProvidedDelegationConnector__Group__8__Impl17733 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__ProvidedDelegationConnector__Group__9__Impl_in_rule__ProvidedDelegationConnector__Group__917763 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__ProvidedDelegationConnector__Group__9__Impl17791 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__0__Impl_in_rule__RequiredDelegationConnector__Group__017842 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__1_in_rule__RequiredDelegationConnector__Group__017845 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_64_in_rule__RequiredDelegationConnector__Group__0__Impl17873 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__1__Impl_in_rule__RequiredDelegationConnector__Group__117904 = new BitSet(new long[]{0x0000000000100000L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__2_in_rule__RequiredDelegationConnector__Group__117907 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__NameAssignment_1_in_rule__RequiredDelegationConnector__Group__1__Impl17934 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__2__Impl_in_rule__RequiredDelegationConnector__Group__217964 = new BitSet(new long[]{0x2000000000000000L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__3_in_rule__RequiredDelegationConnector__Group__217967 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_rule__RequiredDelegationConnector__Group__2__Impl17995 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__3__Impl_in_rule__RequiredDelegationConnector__Group__318026 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__4_in_rule__RequiredDelegationConnector__Group__318029 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_61_in_rule__RequiredDelegationConnector__Group__3__Impl18057 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__4__Impl_in_rule__RequiredDelegationConnector__Group__418088 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__5_in_rule__RequiredDelegationConnector__Group__418091 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__AssemblyContextAssignment_4_in_rule__RequiredDelegationConnector__Group__4__Impl18118 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__5__Impl_in_rule__RequiredDelegationConnector__Group__518148 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__6_in_rule__RequiredDelegationConnector__Group__518151 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_65_in_rule__RequiredDelegationConnector__Group__5__Impl18179 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__6__Impl_in_rule__RequiredDelegationConnector__Group__618210 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__7_in_rule__RequiredDelegationConnector__Group__618213 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_6_in_rule__RequiredDelegationConnector__Group__6__Impl18240 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__7__Impl_in_rule__RequiredDelegationConnector__Group__718270 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__8_in_rule__RequiredDelegationConnector__Group__718273 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_66_in_rule__RequiredDelegationConnector__Group__7__Impl18301 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__8__Impl_in_rule__RequiredDelegationConnector__Group__818332 = new BitSet(new long[]{0x0000000000200000L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__9_in_rule__RequiredDelegationConnector__Group__818335 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_8_in_rule__RequiredDelegationConnector__Group__8__Impl18362 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rule__RequiredDelegationConnector__Group__9__Impl_in_rule__RequiredDelegationConnector__Group__918392 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_21_in_rule__RequiredDelegationConnector__Group__9__Impl18420 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__Repository__NameAssignment_118476 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleDataType_in_rule__Repository__DatatypesAssignment_3_018507 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleInterface_in_rule__Repository__InterfacesAssignment_3_118538 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRepositoryComponent_in_rule__Repository__ComponentsAssignment_3_218569 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__Interface__NameAssignment_118600 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_218635 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__Interface__ParentInterfacesAssignment_3_3_118674 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_218709 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleSignature_in_rule__Interface__SignaturesAssignment_4_3_118740 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__NameAssignment_118771 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_218806 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__RepositoryComponent_Impl__RelationshipAssignment_3_3_118845 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_218880 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__RepositoryComponent_Impl__ProvidedRolesAssignment_4_3_118911 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_218942 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__RepositoryComponent_Impl__RequiredRolesAssignment_5_3_118973 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__CollectionDataType__NameAssignment_119004 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__CollectionDataType__InnerTypeAssignment_419039 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeDataType__NameAssignment_119074 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_219109 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeDataType__ParentTypesAssignment_3_3_119148 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_219183 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleInnerDeclaration_in_rule__CompositeDataType__InnerDeclarationsAssignment_4_3_119214 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rulePrimitiveTypeEnum_in_rule__PrimitiveDataType__TypeAssignment_319245 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__PrimitiveDataType__NameAssignment_519276 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__InnerDeclaration__NameAssignment_119307 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__InnerDeclaration__DataTypeAssignment_419342 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__Signature__ReturnTypeAssignment_0_019381 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__Signature__NameAssignment_119416 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_019447 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleParameter_in_rule__Signature__ParametersAssignment_3_1_119478 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__Parameter__DataTypeAssignment_019513 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__Parameter__NameAssignment_119548 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedRole__InterfaceAssignment_2_019583 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredRole__InterfaceAssignment_2_019622 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__BasicComponent__NameAssignment_119657 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_019688 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__BasicComponent__ProvidedRolesAssignment_2_1_119719 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_019750 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__BasicComponent__RequiredRolesAssignment_3_1_119781 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_219816 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__BasicComponent__RelationshipAssignment_5_3_119855 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeComponent__NameAssignment_119890 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_019921 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__CompositeComponent__ProvidedRolesAssignment_2_1_119952 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_019983 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__CompositeComponent__RequiredRolesAssignment_3_1_120014 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_220049 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__CompositeComponent__RelationshipAssignment_5_3_120088 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_rule__CompositeComponent__AssemblyAssignment_6_120123 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__SubSystem__NameAssignment_120154 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_220185 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_rule__SubSystem__ProvidedRolesAssignment_2_3_120216 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_220247 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_rule__SubSystem__RequiredRolesAssignment_3_3_120278 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_220313 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__SubSystem__RelationshipAssignment_5_3_120352 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_rule__SubSystem__AssemblyAssignment_6_120387 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_220418 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleAssemblyContext_in_rule__ComposedStructureAssembly__AssemblyContextsAssignment_3_3_120449 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_220480 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleAssemblyConnector_in_rule__ComposedStructureAssembly__AssemblyConnectorsAssignment_4_3_120511 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_220542 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_rule__ComposedStructureAssembly__ProvidedDelegationConnectorsAssignment_5_3_120573 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_220604 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_rule__ComposedStructureAssembly__RequiredDelegationConnectorsAssignment_6_3_120635 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyContext__NameAssignment_120666 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyContext__EncapsulatedComponentAssignment_420701 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__NameAssignment_120736 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiredRoleAssignment_420771 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidedRoleAssignment_620810 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__ProvidingAssemblyContextAssignment_820849 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__AssemblyConnector__RequiringAssemblyContextAssignment_1020888 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__NameAssignment_120923 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__AssemblyContextAssignment_420958 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__InnerProvidedRoleAssignment_620997 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__ProvidedDelegationConnector__OuterProvidedRoleAssignment_821036 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__NameAssignment_121071 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__AssemblyContextAssignment_421106 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__InnerRequiredRoleAssignment_621145 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_rule__RequiredDelegationConnector__OuterRequiredRoleAssignment_821184 = new BitSet(new long[]{0x0000000000000002L});
     }
 
 
diff --git a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/internal/MyDslTestActivator.java b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/internal/MyDslTestActivator.java
index 0e38331ba2d5b4161656f3cedcfce936e2f35876..690ff3e96f135011a563612adbdf7bfc5fc9c4a0 100644
--- a/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/internal/MyDslTestActivator.java
+++ b/org.xtext.example.mydslTest.ui/src-gen/org/xtext/example/mydsl/ui/internal/MyDslTestActivator.java
@@ -3,49 +3,38 @@
  */
 package org.xtext.example.mydsl.ui.internal;
 
-import static com.google.inject.util.Modules.override;
-import static com.google.inject.Guice.createInjector;
+import java.util.Collections;
+import java.util.Map;
 
 import org.apache.log4j.Logger;
-
 import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.eclipse.xtext.ui.shared.SharedStateModule;
+import org.eclipse.xtext.util.Modules2;
 import org.osgi.framework.BundleContext;
 
+import com.google.common.collect.Maps;
+import com.google.inject.Guice;
 import com.google.inject.Injector;
 import com.google.inject.Module;
 
-import java.util.Map;
-import java.util.HashMap;
-
 /**
  * This class was generated. Customizations should only happen in a newly
  * introduced subclass. 
  */
 public class MyDslTestActivator extends AbstractUIPlugin {
-
-	private Map<String,Injector> injectors = new HashMap<String,Injector>();
+	
+	public static final String ORG_XTEXT_EXAMPLE_MYDSL_MYDSLTEST = "org.xtext.example.mydsl.MyDslTest";
+	
+	private static final Logger logger = Logger.getLogger(MyDslTestActivator.class);
+	
 	private static MyDslTestActivator INSTANCE;
-
-	public Injector getInjector(String languageName) {
-		return injectors.get(languageName);
-	}
+	
+	private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
 	
 	@Override
 	public void start(BundleContext context) throws Exception {
 		super.start(context);
 		INSTANCE = this;
-		try {
-			registerInjectorFor("org.xtext.example.mydsl.MyDslTest");
-			
-		} catch (Exception e) {
-			Logger.getLogger(getClass()).error(e.getMessage(), e);
-			throw e;
-		}
-	}
-	
-	protected void registerInjectorFor(String language) throws Exception {
-		injectors.put(language, createInjector(
-		  override(override(getRuntimeModule(language)).with(getSharedStateModule())).with(getUiModule(language))));
 	}
 	
 	@Override
@@ -59,24 +48,48 @@ public class MyDslTestActivator extends AbstractUIPlugin {
 		return INSTANCE;
 	}
 	
+	public Injector getInjector(String language) {
+		synchronized (injectors) {
+			Injector injector = injectors.get(language);
+			if (injector == null) {
+				injectors.put(language, injector = createInjector(language));
+			}
+			return injector;
+		}
+	}
+	
+	protected Injector createInjector(String language) {
+		try {
+			Module runtimeModule = getRuntimeModule(language);
+			Module sharedStateModule = getSharedStateModule();
+			Module uiModule = getUiModule(language);
+			Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule);
+			return Guice.createInjector(mergedModule);
+		} catch (Exception e) {
+			logger.error("Failed to create injector for " + language);
+			logger.error(e.getMessage(), e);
+			throw new RuntimeException("Failed to create injector for " + language, e);
+		}
+	}
+
 	protected Module getRuntimeModule(String grammar) {
-		if ("org.xtext.example.mydsl.MyDslTest".equals(grammar)) {
-		  return new org.xtext.example.mydsl.MyDslTestRuntimeModule();
+		if (ORG_XTEXT_EXAMPLE_MYDSL_MYDSLTEST.equals(grammar)) {
+			return new org.xtext.example.mydsl.MyDslTestRuntimeModule();
 		}
 		
 		throw new IllegalArgumentException(grammar);
 	}
 	
 	protected Module getUiModule(String grammar) {
-		if ("org.xtext.example.mydsl.MyDslTest".equals(grammar)) {
-		  return new org.xtext.example.mydsl.ui.MyDslTestUiModule(this);
+		if (ORG_XTEXT_EXAMPLE_MYDSL_MYDSLTEST.equals(grammar)) {
+			return new org.xtext.example.mydsl.ui.MyDslTestUiModule(this);
 		}
 		
 		throw new IllegalArgumentException(grammar);
 	}
 	
 	protected Module getSharedStateModule() {
-		return new org.eclipse.xtext.ui.shared.SharedStateModule();
+		return new SharedStateModule();
 	}
 	
 }
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/AbstractMyDslTestRuntimeModule.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/AbstractMyDslTestRuntimeModule.java
index 4ddc3fee1d7d8a8ee75d9a7f9391ecd2ea674922..4dcd30e5550e5a2016aa428cd5d6836140687fc5 100644
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/AbstractMyDslTestRuntimeModule.java
+++ b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/AbstractMyDslTestRuntimeModule.java
@@ -34,6 +34,11 @@ public abstract class AbstractMyDslTestRuntimeModule extends DefaultRuntimeModul
 			binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("mydslTest");
 	}
 	
+	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
+	public java.lang.ClassLoader bindClassLoaderToInstance() {
+		return getClass().getClassLoader();
+	}
+
 	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
 	public Class<? extends org.eclipse.xtext.IGrammarAccess> bindIGrammarAccess() {
 		return org.xtext.example.mydsl.services.MyDslTestGrammarAccess.class;
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTest.xmi b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTest.xmi
index 6f877586fa4d9d54d5813b2336de6776d2eadfc0..235eeb9b1b005a577d356231ab75690c3268807f 100644
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTest.xmi
+++ b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/MyDslTest.xmi
@@ -38,47 +38,16 @@
           <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.3"/>
         </elements>
         <elements xsi:type="xtext:Keyword" value="{"/>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="datatypes"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
+        <elements xsi:type="xtext:Alternatives" cardinality="*">
           <elements xsi:type="xtext:Assignment" feature="datatypes" operator="+=">
             <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.1"/>
           </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="datatypes" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.1"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="interfaces"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
           <elements xsi:type="xtext:Assignment" feature="interfaces" operator="+=">
             <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.4"/>
           </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="interfaces" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.4"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
-        </elements>
-        <elements xsi:type="xtext:Group" cardinality="?">
-          <elements xsi:type="xtext:Keyword" value="components"/>
-          <elements xsi:type="xtext:Keyword" value="{"/>
           <elements xsi:type="xtext:Assignment" feature="components" operator="+=">
             <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.2"/>
           </elements>
-          <elements xsi:type="xtext:Group" cardinality="*">
-            <elements xsi:type="xtext:Keyword" value=","/>
-            <elements xsi:type="xtext:Assignment" feature="components" operator="+=">
-              <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.2"/>
-            </elements>
-          </elements>
-          <elements xsi:type="xtext:Keyword" value="}"/>
         </elements>
         <elements xsi:type="xtext:Keyword" value="}"/>
       </alternatives>
@@ -439,9 +408,9 @@
             <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//ProvidedRole"/>
           </type>
         </elements>
-        <elements xsi:type="xtext:Keyword" value="provides"/>
+        <elements xsi:type="xtext:Keyword" value="ProvidedRole"/>
         <elements xsi:type="xtext:Group" cardinality="*">
-          <elements xsi:type="xtext:Assignment" feature="interface" operator="+=">
+          <elements xsi:type="xtext:Assignment" feature="interface" operator="=">
             <terminal xsi:type="xtext:CrossReference">
               <type metamodel="/0/@metamodelDeclarations.3">
                 <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//Interface"/>
@@ -463,9 +432,9 @@
             <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//RequiredRole"/>
           </type>
         </elements>
-        <elements xsi:type="xtext:Keyword" value="requires"/>
+        <elements xsi:type="xtext:Keyword" value="RequiredRole"/>
         <elements xsi:type="xtext:Group" cardinality="*">
-          <elements xsi:type="xtext:Assignment" feature="interface" operator="+=">
+          <elements xsi:type="xtext:Assignment" feature="interface" operator="=">
             <terminal xsi:type="xtext:CrossReference">
               <type metamodel="/0/@metamodelDeclarations.3">
                 <classifier xsi:type="ecore:EClass" href="http://www.descartes-research.net/metamodel/repository/0.1#//Interface"/>
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parseTreeConstruction/MyDslTestParsetreeConstructor.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parseTreeConstruction/MyDslTestParsetreeConstructor.java
index 18bb089d229e9ca71c2d7d5f3a9d6d9692ef5586..4fbfc95f1d9f9d6cc7eb87d11f546dbca83780aa 100644
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parseTreeConstruction/MyDslTestParsetreeConstructor.java
+++ b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parseTreeConstruction/MyDslTestParsetreeConstructor.java
@@ -61,15 +61,28 @@ protected class ThisRootNode extends RootToken {
 /************ begin Rule Repository ****************
  *
  * Repository returns repository::Repository:
- * 	"Repository" name=EString "{" ("datatypes" "{" datatypes+=DataType ("," datatypes+=DataType)* "}")? ("interfaces" "{"
- * 	interfaces+=Interface ("," interfaces+=Interface)* "}")? ("components" "{" components+=RepositoryComponent (","
- * 	components+=RepositoryComponent)* "}")? "}";
+ * 
+ * 	"Repository" name=EString "{" (datatypes+=DataType | interfaces+=Interface | components+=RepositoryComponent)*
+ * 
+ * 	/ *
+ * 		('datatypes' '{' datatypes+=DataType ( "," datatypes+=DataType)* '}' )? 
+ * 		('interfaces' '{' interfaces+=Interface ( "," interfaces+=Interface)* '}' )? 
+ * 		('components' '{' components+=RepositoryComponent ( "," components+=RepositoryComponent)* '}' )?
+ * * /
+ * 
+ * 	"}";
  *
  **/
 
-// "Repository" name=EString "{" ("datatypes" "{" datatypes+=DataType ("," datatypes+=DataType)* "}")? ("interfaces" "{"
-// interfaces+=Interface ("," interfaces+=Interface)* "}")? ("components" "{" components+=RepositoryComponent (","
-// components+=RepositoryComponent)* "}")? "}"
+// "Repository" name=EString "{" (datatypes+=DataType | interfaces+=Interface | components+=RepositoryComponent)*
+// 
+// / *
+// 		('datatypes' '{' datatypes+=DataType ( "," datatypes+=DataType)* '}' )? 
+// 		('interfaces' '{' interfaces+=Interface ( "," interfaces+=Interface)* '}' )? 
+// 		('components' '{' components+=RepositoryComponent ( "," components+=RepositoryComponent)* '}' )?
+// * /
+// 
+// "}"
 protected class Repository_Group extends GroupToken {
 	
 	public Repository_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -84,7 +97,7 @@ protected class Repository_Group extends GroupToken {
     @Override
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
-			case 0: return new Repository_RightCurlyBracketKeyword_6(lastRuleCallOrigin, this, 0, inst);
+			case 0: return new Repository_RightCurlyBracketKeyword_4(lastRuleCallOrigin, this, 0, inst);
 			default: return null;
 		}	
 	}
@@ -175,66 +188,24 @@ protected class Repository_LeftCurlyBracketKeyword_2 extends KeywordToken  {
 
 }
 
-// ("datatypes" "{" datatypes+=DataType ("," datatypes+=DataType)* "}")?
-protected class Repository_Group_3 extends GroupToken {
-	
-	public Repository_Group_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_RightCurlyBracketKeyword_3_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "datatypes"
-protected class Repository_DatatypesKeyword_3_0 extends KeywordToken  {
-	
-	public Repository_DatatypesKeyword_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getDatatypesKeyword_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
+// (datatypes+=DataType | interfaces+=Interface | components+=RepositoryComponent)*
+protected class Repository_Alternatives_3 extends AlternativesToken {
 
-// "{"
-protected class Repository_LeftCurlyBracketKeyword_3_1 extends KeywordToken  {
-	
-	public Repository_LeftCurlyBracketKeyword_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+	public Repository_Alternatives_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1();
+	public Alternatives getGrammarElement() {
+		return grammarAccess.getRepositoryAccess().getAlternatives_3();
 	}
 
     @Override
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
-			case 0: return new Repository_DatatypesKeyword_3_0(lastRuleCallOrigin, this, 0, inst);
+			case 0: return new Repository_DatatypesAssignment_3_0(lastRuleCallOrigin, this, 0, inst);
+			case 1: return new Repository_InterfacesAssignment_3_1(lastRuleCallOrigin, this, 1, inst);
+			case 2: return new Repository_ComponentsAssignment_3_2(lastRuleCallOrigin, this, 2, inst);
 			default: return null;
 		}	
 	}
@@ -242,15 +213,15 @@ protected class Repository_LeftCurlyBracketKeyword_3_1 extends KeywordToken  {
 }
 
 // datatypes+=DataType
-protected class Repository_DatatypesAssignment_3_2 extends AssignmentToken  {
+protected class Repository_DatatypesAssignment_3_0 extends AssignmentToken  {
 	
-	public Repository_DatatypesAssignment_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+	public Repository_DatatypesAssignment_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
 	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_2();
+		return grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_0();
 	}
 
     @Override
@@ -269,98 +240,7 @@ protected class Repository_DatatypesAssignment_3_2 extends AssignmentToken  {
 			IEObjectConsumer param = createEObjectConsumer((EObject)value);
 			if(param.isInstanceOf(grammarAccess.getDataTypeRule().getType().getClassifier())) {
 				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Repository_LeftCurlyBracketKeyword_3_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," datatypes+=DataType)*
-protected class Repository_Group_3_3 extends GroupToken {
-	
-	public Repository_Group_3_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_3_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_DatatypesAssignment_3_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class Repository_CommaKeyword_3_3_0 extends KeywordToken  {
-	
-	public Repository_CommaKeyword_3_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_DatatypesAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// datatypes+=DataType
-protected class Repository_DatatypesAssignment_3_3_1 extends AssignmentToken  {
-	
-	public Repository_DatatypesAssignment_3_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getDatatypesAssignment_3_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new DataType_Alternatives(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("datatypes",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("datatypes");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getDataTypeRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_3_1_0(); 
+				element = grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_0_0(); 
 				consumed = obj;
 				return param;
 			}
@@ -372,114 +252,23 @@ protected class Repository_DatatypesAssignment_3_3_1 extends AssignmentToken  {
 	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
 		if(value == inst.getEObject() && !inst.isConsumed()) return null;
 		switch(index) {
-			case 0: return new Repository_CommaKeyword_3_3_0(lastRuleCallOrigin, next, actIndex, consumed);
+			case 0: return new Repository_Alternatives_3(lastRuleCallOrigin, next, actIndex, consumed);
+			case 1: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, next, actIndex, consumed);
 			default: return null;
 		}	
 	}	
 }
 
-
-// "}"
-protected class Repository_RightCurlyBracketKeyword_3_4 extends KeywordToken  {
-	
-	public Repository_RightCurlyBracketKeyword_3_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_3_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_DatatypesAssignment_3_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("interfaces" "{" interfaces+=Interface ("," interfaces+=Interface)* "}")?
-protected class Repository_Group_4 extends GroupToken {
-	
-	public Repository_Group_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_RightCurlyBracketKeyword_4_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "interfaces"
-protected class Repository_InterfacesKeyword_4_0 extends KeywordToken  {
-	
-	public Repository_InterfacesKeyword_4_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getInterfacesKeyword_4_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class Repository_LeftCurlyBracketKeyword_4_1 extends KeywordToken  {
-	
-	public Repository_LeftCurlyBracketKeyword_4_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_InterfacesKeyword_4_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
 // interfaces+=Interface
-protected class Repository_InterfacesAssignment_4_2 extends AssignmentToken  {
+protected class Repository_InterfacesAssignment_3_1 extends AssignmentToken  {
 	
-	public Repository_InterfacesAssignment_4_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+	public Repository_InterfacesAssignment_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
 	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_2();
+		return grammarAccess.getRepositoryAccess().getInterfacesAssignment_3_1();
 	}
 
     @Override
@@ -498,98 +287,7 @@ protected class Repository_InterfacesAssignment_4_2 extends AssignmentToken  {
 			IEObjectConsumer param = createEObjectConsumer((EObject)value);
 			if(param.isInstanceOf(grammarAccess.getInterfaceRule().getType().getClassifier())) {
 				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_2_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Repository_LeftCurlyBracketKeyword_4_1(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-// ("," interfaces+=Interface)*
-protected class Repository_Group_4_3 extends GroupToken {
-	
-	public Repository_Group_4_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_4_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_InterfacesAssignment_4_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class Repository_CommaKeyword_4_3_0 extends KeywordToken  {
-	
-	public Repository_CommaKeyword_4_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_4_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_InterfacesAssignment_4_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// interfaces+=Interface
-protected class Repository_InterfacesAssignment_4_3_1 extends AssignmentToken  {
-	
-	public Repository_InterfacesAssignment_4_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getInterfacesAssignment_4_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Interface_Group(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("interfaces",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("interfaces");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getInterfaceRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_3_1_0(); 
+				element = grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_3_1_0(); 
 				consumed = obj;
 				return param;
 			}
@@ -601,115 +299,23 @@ protected class Repository_InterfacesAssignment_4_3_1 extends AssignmentToken  {
 	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
 		if(value == inst.getEObject() && !inst.isConsumed()) return null;
 		switch(index) {
-			case 0: return new Repository_CommaKeyword_4_3_0(lastRuleCallOrigin, next, actIndex, consumed);
+			case 0: return new Repository_Alternatives_3(lastRuleCallOrigin, next, actIndex, consumed);
+			case 1: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, next, actIndex, consumed);
 			default: return null;
 		}	
 	}	
 }
 
-
-// "}"
-protected class Repository_RightCurlyBracketKeyword_4_4 extends KeywordToken  {
-	
-	public Repository_RightCurlyBracketKeyword_4_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_4_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_InterfacesAssignment_4_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-
-// ("components" "{" components+=RepositoryComponent ("," components+=RepositoryComponent)* "}")?
-protected class Repository_Group_5 extends GroupToken {
-	
-	public Repository_Group_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_5();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_RightCurlyBracketKeyword_5_4(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "components"
-protected class Repository_ComponentsKeyword_5_0 extends KeywordToken  {
-	
-	public Repository_ComponentsKeyword_5_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_4(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_Group_3(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 2, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// "{"
-protected class Repository_LeftCurlyBracketKeyword_5_1 extends KeywordToken  {
-	
-	public Repository_LeftCurlyBracketKeyword_5_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_ComponentsKeyword_5_0(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
 // components+=RepositoryComponent
-protected class Repository_ComponentsAssignment_5_2 extends AssignmentToken  {
+protected class Repository_ComponentsAssignment_3_2 extends AssignmentToken  {
 	
-	public Repository_ComponentsAssignment_5_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+	public Repository_ComponentsAssignment_3_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
 	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getComponentsAssignment_5_2();
+		return grammarAccess.getRepositoryAccess().getComponentsAssignment_3_2();
 	}
 
     @Override
@@ -728,7 +334,7 @@ protected class Repository_ComponentsAssignment_5_2 extends AssignmentToken  {
 			IEObjectConsumer param = createEObjectConsumer((EObject)value);
 			if(param.isInstanceOf(grammarAccess.getRepositoryComponentRule().getType().getClassifier())) {
 				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0(); 
+				element = grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_3_2_0(); 
 				consumed = obj;
 				return param;
 			}
@@ -740,147 +346,37 @@ protected class Repository_ComponentsAssignment_5_2 extends AssignmentToken  {
 	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
 		if(value == inst.getEObject() && !inst.isConsumed()) return null;
 		switch(index) {
-			case 0: return new Repository_LeftCurlyBracketKeyword_5_1(lastRuleCallOrigin, next, actIndex, consumed);
+			case 0: return new Repository_Alternatives_3(lastRuleCallOrigin, next, actIndex, consumed);
+			case 1: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, next, actIndex, consumed);
 			default: return null;
 		}	
 	}	
 }
 
-// ("," components+=RepositoryComponent)*
-protected class Repository_Group_5_3 extends GroupToken {
-	
-	public Repository_Group_5_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getGroup_5_3();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_ComponentsAssignment_5_3_1(lastRuleCallOrigin, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// ","
-protected class Repository_CommaKeyword_5_3_0 extends KeywordToken  {
-	
-	public Repository_CommaKeyword_5_3_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getCommaKeyword_5_3_0();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_ComponentsAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
-// components+=RepositoryComponent
-protected class Repository_ComponentsAssignment_5_3_1 extends AssignmentToken  {
-	
-	public Repository_ComponentsAssignment_5_3_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Assignment getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getComponentsAssignment_5_3_1();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new RepositoryComponent_Alternatives(this, this, 0, inst);
-			default: return null;
-		}	
-	}
-
-    @Override	
-	public IEObjectConsumer tryConsume() {
-		if((value = eObjectConsumer.getConsumable("components",false)) == null) return null;
-		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("components");
-		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
-			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getRepositoryComponentRule().getType().getClassifier())) {
-				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0(); 
-				consumed = obj;
-				return param;
-			}
-		}
-		return null;
-	}
-
-    @Override
-	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
-		if(value == inst.getEObject() && !inst.isConsumed()) return null;
-		switch(index) {
-			case 0: return new Repository_CommaKeyword_5_3_0(lastRuleCallOrigin, next, actIndex, consumed);
-			default: return null;
-		}	
-	}	
-}
-
-
-// "}"
-protected class Repository_RightCurlyBracketKeyword_5_4 extends KeywordToken  {
-	
-	public Repository_RightCurlyBracketKeyword_5_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
-		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
-	}
-	
-	@Override
-	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4();
-	}
-
-    @Override
-	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
-		switch(index) {
-			case 0: return new Repository_Group_5_3(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_ComponentsAssignment_5_2(lastRuleCallOrigin, this, 1, inst);
-			default: return null;
-		}	
-	}
-
-}
-
 
+// / *
+// 		('datatypes' '{' datatypes+=DataType ( "," datatypes+=DataType)* '}' )? 
+// 		('interfaces' '{' interfaces+=Interface ( "," interfaces+=Interface)* '}' )? 
+// 		('components' '{' components+=RepositoryComponent ( "," components+=RepositoryComponent)* '}' )?
+// * /
+// 
 // "}"
-protected class Repository_RightCurlyBracketKeyword_6 extends KeywordToken  {
+protected class Repository_RightCurlyBracketKeyword_4 extends KeywordToken  {
 	
-	public Repository_RightCurlyBracketKeyword_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+	public Repository_RightCurlyBracketKeyword_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
 	public Keyword getGrammarElement() {
-		return grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6();
+		return grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4();
 	}
 
     @Override
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
-			case 0: return new Repository_Group_5(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new Repository_Group_4(lastRuleCallOrigin, this, 1, inst);
-			case 2: return new Repository_Group_3(lastRuleCallOrigin, this, 2, inst);
-			case 3: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 3, inst);
+			case 0: return new Repository_Alternatives_3(lastRuleCallOrigin, this, 0, inst);
+			case 1: return new Repository_LeftCurlyBracketKeyword_2(lastRuleCallOrigin, this, 1, inst);
 			default: return null;
 		}	
 	}
@@ -894,6 +390,7 @@ protected class Repository_RightCurlyBracketKeyword_6 extends KeywordToken  {
 /************ begin Rule DataType ****************
  *
  * DataType returns repository::DataType:
+ * 
  * 	CollectionDataType | CompositeDataType | PrimitiveDataType;
  *
  **/
@@ -1046,6 +543,7 @@ protected class DataType_PrimitiveDataTypeParserRuleCall_2 extends RuleCallToken
 /************ begin Rule RepositoryComponent ****************
  *
  * RepositoryComponent returns repository::RepositoryComponent:
+ * 
  * 	RepositoryComponent_Impl | BasicComponent | CompositeComponent | SubSystem;
  *
  **/
@@ -1237,14 +735,19 @@ protected class RepositoryComponent_SubSystemParserRuleCall_3 extends RuleCallTo
 /************ begin Rule Interface ****************
  *
  * Interface returns repository::Interface:
+ * 
  * 	"Interface" name=EString "{" ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
+ * 
  * 	parentInterfaces+=[repository::Interface|EString])* ")")? ("signatures" "{" signatures+=Signature (","
+ * 
  * 	signatures+=Signature)* "}")? "}";
  *
  **/
 
 // "Interface" name=EString "{" ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
+// 
 // parentInterfaces+=[repository::Interface|EString])* ")")? ("signatures" "{" signatures+=Signature (","
+// 
 // signatures+=Signature)* "}")? "}"
 protected class Interface_Group extends GroupToken {
 	
@@ -1352,6 +855,7 @@ protected class Interface_LeftCurlyBracketKeyword_2 extends KeywordToken  {
 }
 
 // ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
+// 
 // parentInterfaces+=[repository::Interface|EString])* ")")?
 protected class Interface_Group_3 extends GroupToken {
 	
@@ -1822,17 +1326,24 @@ protected class Interface_RightCurlyBracketKeyword_5 extends KeywordToken  {
 /************ begin Rule RepositoryComponent_Impl ****************
  *
  * RepositoryComponent_Impl returns repository::RepositoryComponent:
+ * 
  * 	"RepositoryComponent" name=EString "{" ("relationship" "(" relationship+=[Relationship|EString] (","
+ * 
  * 	relationship+=[Relationship|EString])* ")")? ("providedRoles" "{" providedRoles+=ProvidedRole (","
+ * 
  * 	providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole (","
+ * 
  * 	requiredRoles+=RequiredRole)* "}")? "}";
  *
  **/
 
 // "RepositoryComponent" name=EString "{" ("relationship" "(" relationship+=[Relationship|EString] (","
+// 
 // relationship+=[Relationship|EString])* ")")? ("providedRoles" "{" providedRoles+=ProvidedRole (","
-// providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*
-// "}")? "}"
+// 
+// providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole (","
+// 
+// requiredRoles+=RequiredRole)* "}")? "}"
 protected class RepositoryComponent_Impl_Group extends GroupToken {
 	
 	public RepositoryComponent_Impl_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -2639,6 +2150,7 @@ protected class RepositoryComponent_Impl_RightCurlyBracketKeyword_6 extends Keyw
 /************ begin Rule CollectionDataType ****************
  *
  * CollectionDataType returns repository::CollectionDataType:
+ * 
  * 	"CollectionDataType" name=EString "{" "innerType" innerType=[repository::DataType|EString] "}";
  *
  **/
@@ -2837,14 +2349,19 @@ protected class CollectionDataType_RightCurlyBracketKeyword_5 extends KeywordTok
 /************ begin Rule CompositeDataType ****************
  *
  * CompositeDataType returns repository::CompositeDataType:
+ * 
  * 	"CompositeDataType" name=EString "{" ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
+ * 
  * 	parentTypes+=[repository::CompositeDataType|EString])* ")")? ("innerDeclarations" "{"
+ * 
  * 	innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")? "}";
  *
  **/
 
 // "CompositeDataType" name=EString "{" ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
+// 
 // parentTypes+=[repository::CompositeDataType|EString])* ")")? ("innerDeclarations" "{"
+// 
 // innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")? "}"
 protected class CompositeDataType_Group extends GroupToken {
 	
@@ -2952,6 +2469,7 @@ protected class CompositeDataType_LeftCurlyBracketKeyword_2 extends KeywordToken
 }
 
 // ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
+// 
 // parentTypes+=[repository::CompositeDataType|EString])* ")")?
 protected class CompositeDataType_Group_3 extends GroupToken {
 	
@@ -3422,6 +2940,7 @@ protected class CompositeDataType_RightCurlyBracketKeyword_5 extends KeywordToke
 /************ begin Rule PrimitiveDataType ****************
  *
  * PrimitiveDataType returns repository::PrimitiveDataType:
+ * 
  * 	"PrimitiveDataType" "{" "type" type=PrimitiveTypeEnum "ref" name=EString "}";
  *
  **/
@@ -3639,6 +3158,7 @@ protected class PrimitiveDataType_RightCurlyBracketKeyword_6 extends KeywordToke
 /************ begin Rule InnerDeclaration ****************
  *
  * InnerDeclaration returns repository::InnerDeclaration:
+ * 
  * 	"InnerDeclaration" name=EString "{" "dataType" dataType=[repository::DataType|EString] "}";
  *
  **/
@@ -3837,12 +3357,15 @@ protected class InnerDeclaration_RightCurlyBracketKeyword_5 extends KeywordToken
 /************ begin Rule Signature ****************
  *
  * Signature returns repository::Signature:
+ * 
  * 	(returnType=[repository::DataType|EString] | "void") name=EString "(" (parameters+=Parameter (","
+ * 
  * 	parameters+=Parameter)*)? ")";
  *
  **/
 
 // (returnType=[repository::DataType|EString] | "void") name=EString "(" (parameters+=Parameter (","
+// 
 // parameters+=Parameter)*)? ")"
 protected class Signature_Group extends GroupToken {
 	
@@ -4201,6 +3724,7 @@ protected class Signature_RightParenthesisKeyword_4 extends KeywordToken  {
 /************ begin Rule Parameter ****************
  *
  * Parameter returns repository::Parameter:
+ * 
  * 	dataType=[repository::DataType|EString] name=EString;
  *
  **/
@@ -4311,11 +3835,12 @@ protected class Parameter_NameAssignment_1 extends AssignmentToken  {
 /************ begin Rule ProvidedRole ****************
  *
  * ProvidedRole returns repository::ProvidedRole:
- * 	{repository::ProvidedRole} "provides" (interface+=[repository::Interface|EString] ","?)*;
+ * 
+ * 	{repository::ProvidedRole} "ProvidedRole" (interface=[repository::Interface|EString] ","?)*;
  *
  **/
 
-// {repository::ProvidedRole} "provides" (interface+=[repository::Interface|EString] ","?)*
+// {repository::ProvidedRole} "ProvidedRole" (interface=[repository::Interface|EString] ","?)*
 protected class ProvidedRole_Group extends GroupToken {
 	
 	public ProvidedRole_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -4331,7 +3856,7 @@ protected class ProvidedRole_Group extends GroupToken {
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
 			case 0: return new ProvidedRole_Group_2(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ProvidedRole_ProvidesKeyword_1(lastRuleCallOrigin, this, 1, inst);
+			case 1: return new ProvidedRole_ProvidedRoleKeyword_1(lastRuleCallOrigin, this, 1, inst);
 			default: return null;
 		}	
 	}
@@ -4371,16 +3896,16 @@ protected class ProvidedRole_ProvidedRoleAction_0 extends ActionToken  {
 	}
 }
 
-// "provides"
-protected class ProvidedRole_ProvidesKeyword_1 extends KeywordToken  {
+// "ProvidedRole"
+protected class ProvidedRole_ProvidedRoleKeyword_1 extends KeywordToken  {
 	
-	public ProvidedRole_ProvidesKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+	public ProvidedRole_ProvidedRoleKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
 	public Keyword getGrammarElement() {
-		return grammarAccess.getProvidedRoleAccess().getProvidesKeyword_1();
+		return grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_1();
 	}
 
     @Override
@@ -4393,7 +3918,7 @@ protected class ProvidedRole_ProvidesKeyword_1 extends KeywordToken  {
 
 }
 
-// (interface+=[repository::Interface|EString] ","?)*
+// (interface=[repository::Interface|EString] ","?)*
 protected class ProvidedRole_Group_2 extends GroupToken {
 	
 	public ProvidedRole_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -4415,7 +3940,7 @@ protected class ProvidedRole_Group_2 extends GroupToken {
 
 }
 
-// interface+=[repository::Interface|EString]
+// interface=[repository::Interface|EString]
 protected class ProvidedRole_InterfaceAssignment_2_0 extends AssignmentToken  {
 	
 	public ProvidedRole_InterfaceAssignment_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -4431,7 +3956,7 @@ protected class ProvidedRole_InterfaceAssignment_2_0 extends AssignmentToken  {
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
 			case 0: return new ProvidedRole_Group_2(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new ProvidedRole_ProvidesKeyword_1(lastRuleCallOrigin, this, 1, inst);
+			case 1: return new ProvidedRole_ProvidedRoleKeyword_1(lastRuleCallOrigin, this, 1, inst);
 			default: return null;
 		}	
 	}
@@ -4461,11 +3986,12 @@ protected class ProvidedRole_InterfaceAssignment_2_0 extends AssignmentToken  {
 /************ begin Rule RequiredRole ****************
  *
  * RequiredRole returns repository::RequiredRole:
- * 	{repository::RequiredRole} "requires" (interface+=[repository::Interface|EString] ","?)*;
+ * 
+ * 	{repository::RequiredRole} "RequiredRole" (interface=[repository::Interface|EString] ","?)*;
  *
  **/
 
-// {repository::RequiredRole} "requires" (interface+=[repository::Interface|EString] ","?)*
+// {repository::RequiredRole} "RequiredRole" (interface=[repository::Interface|EString] ","?)*
 protected class RequiredRole_Group extends GroupToken {
 	
 	public RequiredRole_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -4481,7 +4007,7 @@ protected class RequiredRole_Group extends GroupToken {
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
 			case 0: return new RequiredRole_Group_2(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RequiredRole_RequiresKeyword_1(lastRuleCallOrigin, this, 1, inst);
+			case 1: return new RequiredRole_RequiredRoleKeyword_1(lastRuleCallOrigin, this, 1, inst);
 			default: return null;
 		}	
 	}
@@ -4521,16 +4047,16 @@ protected class RequiredRole_RequiredRoleAction_0 extends ActionToken  {
 	}
 }
 
-// "requires"
-protected class RequiredRole_RequiresKeyword_1 extends KeywordToken  {
+// "RequiredRole"
+protected class RequiredRole_RequiredRoleKeyword_1 extends KeywordToken  {
 	
-	public RequiredRole_RequiresKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+	public RequiredRole_RequiredRoleKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
 	public Keyword getGrammarElement() {
-		return grammarAccess.getRequiredRoleAccess().getRequiresKeyword_1();
+		return grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_1();
 	}
 
     @Override
@@ -4543,7 +4069,7 @@ protected class RequiredRole_RequiresKeyword_1 extends KeywordToken  {
 
 }
 
-// (interface+=[repository::Interface|EString] ","?)*
+// (interface=[repository::Interface|EString] ","?)*
 protected class RequiredRole_Group_2 extends GroupToken {
 	
 	public RequiredRole_Group_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -4565,7 +4091,7 @@ protected class RequiredRole_Group_2 extends GroupToken {
 
 }
 
-// interface+=[repository::Interface|EString]
+// interface=[repository::Interface|EString]
 protected class RequiredRole_InterfaceAssignment_2_0 extends AssignmentToken  {
 	
 	public RequiredRole_InterfaceAssignment_2_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
@@ -4581,7 +4107,7 @@ protected class RequiredRole_InterfaceAssignment_2_0 extends AssignmentToken  {
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
 			case 0: return new RequiredRole_Group_2(lastRuleCallOrigin, this, 0, inst);
-			case 1: return new RequiredRole_RequiresKeyword_1(lastRuleCallOrigin, this, 1, inst);
+			case 1: return new RequiredRole_RequiredRoleKeyword_1(lastRuleCallOrigin, this, 1, inst);
 			default: return null;
 		}	
 	}
@@ -4611,14 +4137,19 @@ protected class RequiredRole_InterfaceAssignment_2_0 extends AssignmentToken  {
 /************ begin Rule BasicComponent ****************
  *
  * BasicComponent returns repository::BasicComponent:
+ * 
  * 	"BasicComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
+ * 
  * 	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
+ * 
  * 	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? "}";
  *
  **/
 
 // "BasicComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
+// 
 // (requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
+// 
 // relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? "}"
 protected class BasicComponent_Group extends GroupToken {
 	
@@ -5292,16 +4823,23 @@ protected class BasicComponent_RightCurlyBracketKeyword_6 extends KeywordToken
 /************ begin Rule CompositeComponent ****************
  *
  * CompositeComponent returns repository::CompositeComponent:
+ * 
  * 	"CompositeComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
+ * 
  * 	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
+ * 
  * 	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
+ * 
  * 	assembly=ComposedStructureAssembly)? "}";
  *
  **/
 
 // "CompositeComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
+// 
 // (requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
+// 
 // relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
+// 
 // assembly=ComposedStructureAssembly)? "}"
 protected class CompositeComponent_Group extends GroupToken {
 	
@@ -6068,16 +5606,23 @@ protected class CompositeComponent_RightCurlyBracketKeyword_7 extends KeywordTok
 /************ begin Rule SubSystem ****************
  *
  * SubSystem returns repository::SubSystem:
+ * 
  * 	"SubSystem" name=EString ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
+ * 
  * 	("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")? "{" ("relationship" "("
+ * 
  * 	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
+ * 
  * 	assembly=ComposedStructureAssembly)? "}";
  *
  **/
 
 // "SubSystem" name=EString ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
+// 
 // ("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")? "{" ("relationship" "("
+// 
 // relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
+// 
 // assembly=ComposedStructureAssembly)? "}"
 protected class SubSystem_Group extends GroupToken {
 	
@@ -6976,22 +6521,35 @@ protected class SubSystem_RightCurlyBracketKeyword_7 extends KeywordToken  {
 /************ begin Rule ComposedStructureAssembly ****************
  *
  * ComposedStructureAssembly returns repository_composites::ComposedStructureAssembly:
+ * 
  * 	{repository_composites::ComposedStructureAssembly} "ComposedStructureAssembly" "{" ("assemblyContexts" "{"
+ * 
  * 	assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")? ("assemblyConnectors" "{"
+ * 
  * 	assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
+ * 
  * 	("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
+ * 
  * 	providedDelegationConnectors+=ProvidedDelegationConnector)* "}")? ("requiredDelegationConnectors" "{"
+ * 
  * 	requiredDelegationConnectors+=RequiredDelegationConnector (","
+ * 
  * 	requiredDelegationConnectors+=RequiredDelegationConnector)* "}")? "}";
  *
  **/
 
 // {repository_composites::ComposedStructureAssembly} "ComposedStructureAssembly" "{" ("assemblyContexts" "{"
+// 
 // assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")? ("assemblyConnectors" "{"
+// 
 // assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
+// 
 // ("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
+// 
 // providedDelegationConnectors+=ProvidedDelegationConnector)* "}")? ("requiredDelegationConnectors" "{"
+// 
 // requiredDelegationConnectors+=RequiredDelegationConnector (","
+// 
 // requiredDelegationConnectors+=RequiredDelegationConnector)* "}")? "}"
 protected class ComposedStructureAssembly_Group extends GroupToken {
 	
@@ -7549,6 +7107,7 @@ protected class ComposedStructureAssembly_RightCurlyBracketKeyword_4_4 extends K
 
 
 // ("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
+// 
 // providedDelegationConnectors+=ProvidedDelegationConnector)* "}")?
 protected class ComposedStructureAssembly_Group_5 extends GroupToken {
 	
@@ -7780,6 +7339,7 @@ protected class ComposedStructureAssembly_RightCurlyBracketKeyword_5_4 extends K
 
 
 // ("requiredDelegationConnectors" "{" requiredDelegationConnectors+=RequiredDelegationConnector (","
+// 
 // requiredDelegationConnectors+=RequiredDelegationConnector)* "}")?
 protected class ComposedStructureAssembly_Group_6 extends GroupToken {
 	
@@ -8044,12 +7604,15 @@ protected class ComposedStructureAssembly_RightCurlyBracketKeyword_7 extends Key
 /************ begin Rule AssemblyContext ****************
  *
  * AssemblyContext returns repository_composites::AssemblyContext:
+ * 
  * 	"AssemblyContext" name=EString "{" "encapsulatedComponent"
+ * 
  * 	encapsulatedComponent=[repository::RepositoryComponent|EString] "}";
  *
  **/
 
 // "AssemblyContext" name=EString "{" "encapsulatedComponent"
+// 
 // encapsulatedComponent=[repository::RepositoryComponent|EString] "}"
 protected class AssemblyContext_Group extends GroupToken {
 	
@@ -8244,16 +7807,23 @@ protected class AssemblyContext_RightCurlyBracketKeyword_5 extends KeywordToken
 /************ begin Rule AssemblyConnector ****************
  *
  * AssemblyConnector returns repository_composites::AssemblyConnector:
+ * 
  * 	"AssemblyConnector" name=EString "{" "requiredRole" requiredRole=[repository::RequiredRole|EString] "providedRole"
+ * 
  * 	providedRole=[repository::ProvidedRole|EString] "providingAssemblyContext"
+ * 
  * 	providingAssemblyContext=[repository_composites::AssemblyContext|EString] "requiringAssemblyContext"
+ * 
  * 	requiringAssemblyContext=[repository_composites::AssemblyContext|EString] "}";
  *
  **/
 
 // "AssemblyConnector" name=EString "{" "requiredRole" requiredRole=[repository::RequiredRole|EString] "providedRole"
+// 
 // providedRole=[repository::ProvidedRole|EString] "providingAssemblyContext"
+// 
 // providingAssemblyContext=[repository_composites::AssemblyContext|EString] "requiringAssemblyContext"
+// 
 // requiringAssemblyContext=[repository_composites::AssemblyContext|EString] "}"
 protected class AssemblyConnector_Group extends GroupToken {
 	
@@ -8625,16 +8195,23 @@ protected class AssemblyConnector_RightCurlyBracketKeyword_11 extends KeywordTok
 /************ begin Rule ProvidedDelegationConnector ****************
  *
  * ProvidedDelegationConnector returns repository_composites::ProvidedDelegationConnector:
+ * 
  * 	"ProvidedDelegationConnector" name=EString "{" "assemblyContext"
+ * 
  * 	assemblyContext=[repository_composites::AssemblyContext|EString] "innerProvidedRole"
+ * 
  * 	innerProvidedRole=[repository::ProvidedRole|EString] "outerProvidedRole"
+ * 
  * 	outerProvidedRole=[repository::ProvidedRole|EString] "}";
  *
  **/
 
 // "ProvidedDelegationConnector" name=EString "{" "assemblyContext"
+// 
 // assemblyContext=[repository_composites::AssemblyContext|EString] "innerProvidedRole"
+// 
 // innerProvidedRole=[repository::ProvidedRole|EString] "outerProvidedRole"
+// 
 // outerProvidedRole=[repository::ProvidedRole|EString] "}"
 protected class ProvidedDelegationConnector_Group extends GroupToken {
 	
@@ -8947,16 +8524,23 @@ protected class ProvidedDelegationConnector_RightCurlyBracketKeyword_9 extends K
 /************ begin Rule RequiredDelegationConnector ****************
  *
  * RequiredDelegationConnector returns repository_composites::RequiredDelegationConnector:
+ * 
  * 	"RequiredDelegationConnector" name=EString "{" "assemblyContext"
+ * 
  * 	assemblyContext=[repository_composites::AssemblyContext|EString] "innerRequiredRole"
+ * 
  * 	innerRequiredRole=[repository::RequiredRole|EString] "outerRequiredRole"
+ * 
  * 	outerRequiredRole=[repository::RequiredRole|EString] "}";
  *
  **/
 
 // "RequiredDelegationConnector" name=EString "{" "assemblyContext"
+// 
 // assemblyContext=[repository_composites::AssemblyContext|EString] "innerRequiredRole"
+// 
 // innerRequiredRole=[repository::RequiredRole|EString] "outerRequiredRole"
+// 
 // outerRequiredRole=[repository::RequiredRole|EString] "}"
 protected class RequiredDelegationConnector_Group extends GroupToken {
 	
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g
index 88356f220e08bc76039adfd1519042c6bdecefac..2cc9bf5d3b184e820c96827966fe84571f19dff9 100644
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g
+++ b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g
@@ -104,165 +104,65 @@ ruleRepository returns [EObject current=null]
     {
     	newLeafNode(otherlv_2, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2());
     }
-(	otherlv_3='datatypes' 
-    {
-    	newLeafNode(otherlv_3, grammarAccess.getRepositoryAccess().getDatatypesKeyword_3_0());
-    }
-	otherlv_4='{' 
-    {
-    	newLeafNode(otherlv_4, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1());
-    }
-(
+((
 (
 		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_2_0()); 
+	        newCompositeNode(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_0_0()); 
 	    }
-		lv_datatypes_5_0=ruleDataType		{
+		lv_datatypes_3_0=ruleDataType		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
 	        }
        		add(
        			$current, 
        			"datatypes",
-        		lv_datatypes_5_0, 
+        		lv_datatypes_3_0, 
         		"DataType");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_6=',' 
-    {
-    	newLeafNode(otherlv_6, grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_3_1_0()); 
-	    }
-		lv_datatypes_7_0=ruleDataType		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		add(
-       			$current, 
-       			"datatypes",
-        		lv_datatypes_7_0, 
-        		"DataType");
-	        afterParserOrEnumRuleCall();
-	    }
-
 )
-))*	otherlv_8='}' 
-    {
-    	newLeafNode(otherlv_8, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4());
-    }
-)?(	otherlv_9='interfaces' 
-    {
-    	newLeafNode(otherlv_9, grammarAccess.getRepositoryAccess().getInterfacesKeyword_4_0());
-    }
-	otherlv_10='{' 
-    {
-    	newLeafNode(otherlv_10, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1());
-    }
-(
+    |(
 (
 		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_2_0()); 
+	        newCompositeNode(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_3_1_0()); 
 	    }
-		lv_interfaces_11_0=ruleInterface		{
+		lv_interfaces_4_0=ruleInterface		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
 	        }
        		add(
        			$current, 
        			"interfaces",
-        		lv_interfaces_11_0, 
+        		lv_interfaces_4_0, 
         		"Interface");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_12=',' 
-    {
-    	newLeafNode(otherlv_12, grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_3_1_0()); 
-	    }
-		lv_interfaces_13_0=ruleInterface		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		add(
-       			$current, 
-       			"interfaces",
-        		lv_interfaces_13_0, 
-        		"Interface");
-	        afterParserOrEnumRuleCall();
-	    }
-
-)
-))*	otherlv_14='}' 
-    {
-    	newLeafNode(otherlv_14, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4());
-    }
-)?(	otherlv_15='components' 
-    {
-    	newLeafNode(otherlv_15, grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0());
-    }
-	otherlv_16='{' 
-    {
-    	newLeafNode(otherlv_16, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1());
-    }
-(
-(
-		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); 
-	    }
-		lv_components_17_0=ruleRepositoryComponent		{
-	        if ($current==null) {
-	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
-	        }
-       		add(
-       			$current, 
-       			"components",
-        		lv_components_17_0, 
-        		"RepositoryComponent");
-	        afterParserOrEnumRuleCall();
-	    }
-
 )
-)(	otherlv_18=',' 
-    {
-    	newLeafNode(otherlv_18, grammarAccess.getRepositoryAccess().getCommaKeyword_5_3_0());
-    }
-(
+    |(
 (
 		{ 
-	        newCompositeNode(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); 
+	        newCompositeNode(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_3_2_0()); 
 	    }
-		lv_components_19_0=ruleRepositoryComponent		{
+		lv_components_5_0=ruleRepositoryComponent		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRepositoryRule());
 	        }
        		add(
        			$current, 
        			"components",
-        		lv_components_19_0, 
+        		lv_components_5_0, 
         		"RepositoryComponent");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_20='}' 
-    {
-    	newLeafNode(otherlv_20, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4());
-    }
-)?	otherlv_21='}' 
+))*	otherlv_6='}' 
     {
-    	newLeafNode(otherlv_21, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6());
+    	newLeafNode(otherlv_6, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4());
     }
 )
 ;
@@ -1314,9 +1214,9 @@ ruleProvidedRole returns [EObject current=null]
             grammarAccess.getProvidedRoleAccess().getProvidedRoleAction_0(),
             $current);
     }
-)	otherlv_1='provides' 
+)	otherlv_1='ProvidedRole' 
     {
-    	newLeafNode(otherlv_1, grammarAccess.getProvidedRoleAccess().getProvidesKeyword_1());
+    	newLeafNode(otherlv_1, grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_1());
     }
 ((
 (
@@ -1364,9 +1264,9 @@ ruleRequiredRole returns [EObject current=null]
             grammarAccess.getRequiredRoleAccess().getRequiredRoleAction_0(),
             $current);
     }
-)	otherlv_1='requires' 
+)	otherlv_1='RequiredRole' 
     {
-    	newLeafNode(otherlv_1, grammarAccess.getRequiredRoleAccess().getRequiresKeyword_1());
+    	newLeafNode(otherlv_1, grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_1());
     }
 ((
 (
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.tokens b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.tokens
index fbac6981da0a14341e8d8ce818c441c761e8e35b..321c7619717bd2a726bd2029de2cc7ba42faf884 100644
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.tokens
+++ b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.tokens
@@ -1,8 +1,5 @@
-T__68=68
-T__69=69
 RULE_ID=5
 T__66=66
-T__67=67
 T__64=64
 T__29=29
 T__65=65
@@ -64,62 +61,59 @@ T__37=37
 T__38=38
 T__39=39
 RULE_WS=9
-'requiredRole'=52
-'type'=33
-'DOUBLE'=66
-'providedRoles'=25
-'requiringAssemblyContext'=55
-'outerProvidedRole'=59
-'BasicComponent'=40
-'innerType'=28
-'CompositeComponent'=41
-'InnerDeclaration'=35
-'CompositeDataType'=29
-'components'=17
-'innerRequiredRole'=61
-'assembly'=42
-'encapsulatedComponent'=50
-'RequiredDelegationConnector'=60
+'requiredRole'=49
+'type'=30
+'DOUBLE'=63
+'providedRoles'=22
+'requiringAssemblyContext'=52
+'outerProvidedRole'=56
+'BasicComponent'=37
+'innerType'=25
+'CompositeComponent'=38
+'InnerDeclaration'=32
+'CompositeDataType'=26
+'RequiredRole'=36
+'innerRequiredRole'=58
+'assembly'=39
+'encapsulatedComponent'=47
 '{'=12
-'assemblyConnectors'=46
-'Interface'=18
-'void'=37
-'parentInterfaces'=19
-'ref'=34
-'('=20
-'innerProvidedRole'=58
-','=14
-'SubSystem'=43
-'BOOL'=65
-'INT'=63
-'ComposedStructureAssembly'=44
-'providedRole'=53
-'providingAssemblyContext'=54
-'PrimitiveDataType'=32
-'relationship'=24
-'assemblyContexts'=45
-'dataType'=36
-'requires'=39
-'requiredRoles'=26
+'assemblyConnectors'=43
+'RequiredDelegationConnector'=57
+'void'=34
+'Interface'=14
+'parentInterfaces'=15
+'ref'=31
+'('=16
+'innerProvidedRole'=55
+','=17
+'SubSystem'=40
+'BOOL'=62
+'INT'=60
+'ComposedStructureAssembly'=41
+'providedRole'=50
+'providingAssemblyContext'=51
+'PrimitiveDataType'=29
+'relationship'=21
+'assemblyContexts'=42
+'dataType'=33
+'requiredRoles'=23
 'Repository'=11
-'interfaces'=16
-'CHAR'=67
-')'=21
-'LONG'=69
-'outerRequiredRole'=62
-'parentTypes'=30
-'AssemblyContext'=49
-'innerDeclarations'=31
-'}'=15
-'datatypes'=13
-'AssemblyConnector'=51
-'CollectionDataType'=27
-'ProvidedDelegationConnector'=56
-'STRING'=64
-'RepositoryComponent'=23
-'signatures'=22
-'provides'=38
-'providedDelegationConnectors'=47
-'assemblyContext'=57
-'BYTE'=68
-'requiredDelegationConnectors'=48
+'CHAR'=64
+')'=18
+'LONG'=66
+'parentTypes'=27
+'outerRequiredRole'=59
+'AssemblyContext'=46
+'innerDeclarations'=28
+'}'=13
+'AssemblyConnector'=48
+'ProvidedRole'=35
+'CollectionDataType'=24
+'ProvidedDelegationConnector'=53
+'STRING'=61
+'RepositoryComponent'=20
+'signatures'=19
+'providedDelegationConnectors'=44
+'assemblyContext'=54
+'BYTE'=65
+'requiredDelegationConnectors'=45
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestLexer.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestLexer.java
index fb8b6b58ad8abee53b492eafeabe9c1acde4e6f9..462194db7189e8222c25298fcca0039f263030fd 100644
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestLexer.java
+++ b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestLexer.java
@@ -12,13 +12,10 @@ import java.util.ArrayList;
 
 @SuppressWarnings("all")
 public class InternalMyDslTestLexer extends Lexer {
-    public static final int T__68=68;
-    public static final int T__69=69;
     public static final int RULE_ID=5;
     public static final int T__66=66;
-    public static final int T__67=67;
-    public static final int T__29=29;
     public static final int T__64=64;
+    public static final int T__29=29;
     public static final int T__28=28;
     public static final int T__65=65;
     public static final int T__27=27;
@@ -29,8 +26,8 @@ public class InternalMyDslTestLexer extends Lexer {
     public static final int T__24=24;
     public static final int T__23=23;
     public static final int T__22=22;
-    public static final int RULE_ANY_OTHER=10;
     public static final int T__21=21;
+    public static final int RULE_ANY_OTHER=10;
     public static final int T__20=20;
     public static final int T__61=61;
     public static final int EOF=-1;
@@ -139,11 +136,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__13;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:13:7: ( 'datatypes' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:13:9: 'datatypes'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:13:7: ( '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:13:9: '}'
             {
-            match("datatypes"); 
-
+            match('}'); 
 
             }
 
@@ -160,10 +156,11 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__14;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:14:7: ( ',' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:14:9: ','
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:14:7: ( 'Interface' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:14:9: 'Interface'
             {
-            match(','); 
+            match("Interface"); 
+
 
             }
 
@@ -180,10 +177,11 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__15;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:15:7: ( '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:15:9: '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:15:7: ( 'parentInterfaces' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:15:9: 'parentInterfaces'
             {
-            match('}'); 
+            match("parentInterfaces"); 
+
 
             }
 
@@ -200,11 +198,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__16;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:16:7: ( 'interfaces' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:16:9: 'interfaces'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:16:7: ( '(' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:16:9: '('
             {
-            match("interfaces"); 
-
+            match('('); 
 
             }
 
@@ -221,11 +218,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__17;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:17:7: ( 'components' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:17:9: 'components'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:17:7: ( ',' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:17:9: ','
             {
-            match("components"); 
-
+            match(','); 
 
             }
 
@@ -242,11 +238,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__18;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:18:7: ( 'Interface' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:18:9: 'Interface'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:18:7: ( ')' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:18:9: ')'
             {
-            match("Interface"); 
-
+            match(')'); 
 
             }
 
@@ -263,10 +258,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__19;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:19:7: ( 'parentInterfaces' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:19:9: 'parentInterfaces'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:19:7: ( 'signatures' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:19:9: 'signatures'
             {
-            match("parentInterfaces"); 
+            match("signatures"); 
 
 
             }
@@ -284,10 +279,11 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__20;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:20:7: ( '(' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:20:9: '('
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:20:7: ( 'RepositoryComponent' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:20:9: 'RepositoryComponent'
             {
-            match('('); 
+            match("RepositoryComponent"); 
+
 
             }
 
@@ -304,10 +300,11 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__21;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:21:7: ( ')' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:21:9: ')'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:21:7: ( 'relationship' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:21:9: 'relationship'
             {
-            match(')'); 
+            match("relationship"); 
+
 
             }
 
@@ -324,10 +321,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__22;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:22:7: ( 'signatures' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:22:9: 'signatures'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:22:7: ( 'providedRoles' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:22:9: 'providedRoles'
             {
-            match("signatures"); 
+            match("providedRoles"); 
 
 
             }
@@ -345,10 +342,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__23;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:23:7: ( 'RepositoryComponent' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:23:9: 'RepositoryComponent'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:23:7: ( 'requiredRoles' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:23:9: 'requiredRoles'
             {
-            match("RepositoryComponent"); 
+            match("requiredRoles"); 
 
 
             }
@@ -366,10 +363,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__24;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:24:7: ( 'relationship' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:24:9: 'relationship'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:24:7: ( 'CollectionDataType' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:24:9: 'CollectionDataType'
             {
-            match("relationship"); 
+            match("CollectionDataType"); 
 
 
             }
@@ -387,10 +384,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__25;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:25:7: ( 'providedRoles' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:25:9: 'providedRoles'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:25:7: ( 'innerType' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:25:9: 'innerType'
             {
-            match("providedRoles"); 
+            match("innerType"); 
 
 
             }
@@ -408,10 +405,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__26;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:26:7: ( 'requiredRoles' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:26:9: 'requiredRoles'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:26:7: ( 'CompositeDataType' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:26:9: 'CompositeDataType'
             {
-            match("requiredRoles"); 
+            match("CompositeDataType"); 
 
 
             }
@@ -429,10 +426,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__27;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:27:7: ( 'CollectionDataType' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:27:9: 'CollectionDataType'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:27:7: ( 'parentTypes' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:27:9: 'parentTypes'
             {
-            match("CollectionDataType"); 
+            match("parentTypes"); 
 
 
             }
@@ -450,10 +447,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__28;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:28:7: ( 'innerType' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:28:9: 'innerType'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:28:7: ( 'innerDeclarations' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:28:9: 'innerDeclarations'
             {
-            match("innerType"); 
+            match("innerDeclarations"); 
 
 
             }
@@ -471,10 +468,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__29;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:29:7: ( 'CompositeDataType' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:29:9: 'CompositeDataType'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:29:7: ( 'PrimitiveDataType' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:29:9: 'PrimitiveDataType'
             {
-            match("CompositeDataType"); 
+            match("PrimitiveDataType"); 
 
 
             }
@@ -492,10 +489,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__30;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:30:7: ( 'parentTypes' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:30:9: 'parentTypes'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:30:7: ( 'type' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:30:9: 'type'
             {
-            match("parentTypes"); 
+            match("type"); 
 
 
             }
@@ -513,10 +510,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__31;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:31:7: ( 'innerDeclarations' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:31:9: 'innerDeclarations'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:31:7: ( 'ref' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:31:9: 'ref'
             {
-            match("innerDeclarations"); 
+            match("ref"); 
 
 
             }
@@ -534,10 +531,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__32;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:32:7: ( 'PrimitiveDataType' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:32:9: 'PrimitiveDataType'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:32:7: ( 'InnerDeclaration' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:32:9: 'InnerDeclaration'
             {
-            match("PrimitiveDataType"); 
+            match("InnerDeclaration"); 
 
 
             }
@@ -555,10 +552,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__33;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:33:7: ( 'type' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:33:9: 'type'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:33:7: ( 'dataType' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:33:9: 'dataType'
             {
-            match("type"); 
+            match("dataType"); 
 
 
             }
@@ -576,10 +573,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__34;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:34:7: ( 'ref' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:34:9: 'ref'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:34:7: ( 'void' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:34:9: 'void'
             {
-            match("ref"); 
+            match("void"); 
 
 
             }
@@ -597,10 +594,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__35;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:35:7: ( 'InnerDeclaration' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:35:9: 'InnerDeclaration'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:35:7: ( 'ProvidedRole' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:35:9: 'ProvidedRole'
             {
-            match("InnerDeclaration"); 
+            match("ProvidedRole"); 
 
 
             }
@@ -618,10 +615,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__36;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:36:7: ( 'dataType' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:36:9: 'dataType'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:36:7: ( 'RequiredRole' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:36:9: 'RequiredRole'
             {
-            match("dataType"); 
+            match("RequiredRole"); 
 
 
             }
@@ -639,10 +636,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__37;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:37:7: ( 'void' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:37:9: 'void'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:37:7: ( 'BasicComponent' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:37:9: 'BasicComponent'
             {
-            match("void"); 
+            match("BasicComponent"); 
 
 
             }
@@ -660,10 +657,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__38;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:38:7: ( 'provides' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:38:9: 'provides'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:38:7: ( 'CompositeComponent' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:38:9: 'CompositeComponent'
             {
-            match("provides"); 
+            match("CompositeComponent"); 
 
 
             }
@@ -681,10 +678,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__39;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:39:7: ( 'requires' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:39:9: 'requires'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:39:7: ( 'assembly' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:39:9: 'assembly'
             {
-            match("requires"); 
+            match("assembly"); 
 
 
             }
@@ -702,10 +699,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__40;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:40:7: ( 'BasicComponent' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:40:9: 'BasicComponent'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:40:7: ( 'SubSystem' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:40:9: 'SubSystem'
             {
-            match("BasicComponent"); 
+            match("SubSystem"); 
 
 
             }
@@ -723,10 +720,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__41;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:41:7: ( 'CompositeComponent' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:41:9: 'CompositeComponent'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:41:7: ( 'ComposedStructureAssembly' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:41:9: 'ComposedStructureAssembly'
             {
-            match("CompositeComponent"); 
+            match("ComposedStructureAssembly"); 
 
 
             }
@@ -744,10 +741,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__42;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:42:7: ( 'assembly' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:42:9: 'assembly'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:42:7: ( 'assemblyContexts' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:42:9: 'assemblyContexts'
             {
-            match("assembly"); 
+            match("assemblyContexts"); 
 
 
             }
@@ -765,10 +762,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__43;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:43:7: ( 'SubSystem' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:43:9: 'SubSystem'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:43:7: ( 'assemblyConnectors' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:43:9: 'assemblyConnectors'
             {
-            match("SubSystem"); 
+            match("assemblyConnectors"); 
 
 
             }
@@ -786,10 +783,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__44;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:44:7: ( 'ComposedStructureAssembly' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:44:9: 'ComposedStructureAssembly'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:44:7: ( 'providedDelegationConnectors' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:44:9: 'providedDelegationConnectors'
             {
-            match("ComposedStructureAssembly"); 
+            match("providedDelegationConnectors"); 
 
 
             }
@@ -807,10 +804,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__45;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:45:7: ( 'assemblyContexts' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:45:9: 'assemblyContexts'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:45:7: ( 'requiredDelegationConnectors' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:45:9: 'requiredDelegationConnectors'
             {
-            match("assemblyContexts"); 
+            match("requiredDelegationConnectors"); 
 
 
             }
@@ -828,10 +825,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__46;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:46:7: ( 'assemblyConnectors' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:46:9: 'assemblyConnectors'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:46:7: ( 'AssemblyContext' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:46:9: 'AssemblyContext'
             {
-            match("assemblyConnectors"); 
+            match("AssemblyContext"); 
 
 
             }
@@ -849,10 +846,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__47;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:47:7: ( 'providedDelegationConnectors' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:47:9: 'providedDelegationConnectors'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:47:7: ( 'encapsulatedComponent' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:47:9: 'encapsulatedComponent'
             {
-            match("providedDelegationConnectors"); 
+            match("encapsulatedComponent"); 
 
 
             }
@@ -870,10 +867,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__48;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:48:7: ( 'requiredDelegationConnectors' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:48:9: 'requiredDelegationConnectors'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:48:7: ( 'AssemblyConnector' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:48:9: 'AssemblyConnector'
             {
-            match("requiredDelegationConnectors"); 
+            match("AssemblyConnector"); 
 
 
             }
@@ -891,10 +888,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__49;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:49:7: ( 'AssemblyContext' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:49:9: 'AssemblyContext'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:49:7: ( 'requiredRole' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:49:9: 'requiredRole'
             {
-            match("AssemblyContext"); 
+            match("requiredRole"); 
 
 
             }
@@ -912,10 +909,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__50;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:50:7: ( 'encapsulatedComponent' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:50:9: 'encapsulatedComponent'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:50:7: ( 'providedRole' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:50:9: 'providedRole'
             {
-            match("encapsulatedComponent"); 
+            match("providedRole"); 
 
 
             }
@@ -933,10 +930,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__51;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:51:7: ( 'AssemblyConnector' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:51:9: 'AssemblyConnector'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:51:7: ( 'providingAssemblyContext' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:51:9: 'providingAssemblyContext'
             {
-            match("AssemblyConnector"); 
+            match("providingAssemblyContext"); 
 
 
             }
@@ -954,10 +951,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__52;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:52:7: ( 'requiredRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:52:9: 'requiredRole'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:52:7: ( 'requiringAssemblyContext' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:52:9: 'requiringAssemblyContext'
             {
-            match("requiredRole"); 
+            match("requiringAssemblyContext"); 
 
 
             }
@@ -975,10 +972,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__53;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:53:7: ( 'providedRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:53:9: 'providedRole'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:53:7: ( 'ProvidedDelegationConnector' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:53:9: 'ProvidedDelegationConnector'
             {
-            match("providedRole"); 
+            match("ProvidedDelegationConnector"); 
 
 
             }
@@ -996,10 +993,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__54;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:54:7: ( 'providingAssemblyContext' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:54:9: 'providingAssemblyContext'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:54:7: ( 'assemblyContext' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:54:9: 'assemblyContext'
             {
-            match("providingAssemblyContext"); 
+            match("assemblyContext"); 
 
 
             }
@@ -1017,10 +1014,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__55;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:55:7: ( 'requiringAssemblyContext' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:55:9: 'requiringAssemblyContext'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:55:7: ( 'innerProvidedRole' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:55:9: 'innerProvidedRole'
             {
-            match("requiringAssemblyContext"); 
+            match("innerProvidedRole"); 
 
 
             }
@@ -1038,10 +1035,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__56;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:56:7: ( 'ProvidedDelegationConnector' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:56:9: 'ProvidedDelegationConnector'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:56:7: ( 'outerProvidedRole' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:56:9: 'outerProvidedRole'
             {
-            match("ProvidedDelegationConnector"); 
+            match("outerProvidedRole"); 
 
 
             }
@@ -1059,10 +1056,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__57;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:57:7: ( 'assemblyContext' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:57:9: 'assemblyContext'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:57:7: ( 'RequiredDelegationConnector' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:57:9: 'RequiredDelegationConnector'
             {
-            match("assemblyContext"); 
+            match("RequiredDelegationConnector"); 
 
 
             }
@@ -1080,10 +1077,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__58;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:58:7: ( 'innerProvidedRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:58:9: 'innerProvidedRole'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:58:7: ( 'innerRequiredRole' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:58:9: 'innerRequiredRole'
             {
-            match("innerProvidedRole"); 
+            match("innerRequiredRole"); 
 
 
             }
@@ -1101,10 +1098,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__59;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:59:7: ( 'outerProvidedRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:59:9: 'outerProvidedRole'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:59:7: ( 'outerRequiredRole' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:59:9: 'outerRequiredRole'
             {
-            match("outerProvidedRole"); 
+            match("outerRequiredRole"); 
 
 
             }
@@ -1122,10 +1119,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__60;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:60:7: ( 'RequiredDelegationConnector' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:60:9: 'RequiredDelegationConnector'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:60:7: ( 'INT' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:60:9: 'INT'
             {
-            match("RequiredDelegationConnector"); 
+            match("INT"); 
 
 
             }
@@ -1143,10 +1140,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__61;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:61:7: ( 'innerRequiredRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:61:9: 'innerRequiredRole'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:61:7: ( 'STRING' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:61:9: 'STRING'
             {
-            match("innerRequiredRole"); 
+            match("STRING"); 
 
 
             }
@@ -1164,10 +1161,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__62;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:62:7: ( 'outerRequiredRole' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:62:9: 'outerRequiredRole'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:62:7: ( 'BOOL' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:62:9: 'BOOL'
             {
-            match("outerRequiredRole"); 
+            match("BOOL"); 
 
 
             }
@@ -1185,10 +1182,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__63;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:63:7: ( 'INT' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:63:9: 'INT'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:63:7: ( 'DOUBLE' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:63:9: 'DOUBLE'
             {
-            match("INT"); 
+            match("DOUBLE"); 
 
 
             }
@@ -1206,10 +1203,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__64;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:64:7: ( 'STRING' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:64:9: 'STRING'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:64:7: ( 'CHAR' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:64:9: 'CHAR'
             {
-            match("STRING"); 
+            match("CHAR"); 
 
 
             }
@@ -1227,10 +1224,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__65;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:65:7: ( 'BOOL' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:65:9: 'BOOL'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:65:7: ( 'BYTE' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:65:9: 'BYTE'
             {
-            match("BOOL"); 
+            match("BYTE"); 
 
 
             }
@@ -1248,71 +1245,8 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = T__66;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:66:7: ( 'DOUBLE' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:66:9: 'DOUBLE'
-            {
-            match("DOUBLE"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__66"
-
-    // $ANTLR start "T__67"
-    public final void mT__67() throws RecognitionException {
-        try {
-            int _type = T__67;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:67:7: ( 'CHAR' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:67:9: 'CHAR'
-            {
-            match("CHAR"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__67"
-
-    // $ANTLR start "T__68"
-    public final void mT__68() throws RecognitionException {
-        try {
-            int _type = T__68;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:68:7: ( 'BYTE' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:68:9: 'BYTE'
-            {
-            match("BYTE"); 
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        }
-    }
-    // $ANTLR end "T__68"
-
-    // $ANTLR start "T__69"
-    public final void mT__69() throws RecognitionException {
-        try {
-            int _type = T__69;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:69:7: ( 'LONG' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:69:9: 'LONG'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:66:7: ( 'LONG' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:66:9: 'LONG'
             {
             match("LONG"); 
 
@@ -1325,17 +1259,17 @@ public class InternalMyDslTestLexer extends Lexer {
         finally {
         }
     }
-    // $ANTLR end "T__69"
+    // $ANTLR end "T__66"
 
     // $ANTLR start "RULE_ID"
     public final void mRULE_ID() throws RecognitionException {
         try {
             int _type = RULE_ID;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2705:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2705:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2605:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2605:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2705:11: ( '^' )?
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2605:11: ( '^' )?
             int alt1=2;
             int LA1_0 = input.LA(1);
 
@@ -1344,7 +1278,7 @@ public class InternalMyDslTestLexer extends Lexer {
             }
             switch (alt1) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2705:11: '^'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2605:11: '^'
                     {
                     match('^'); 
 
@@ -1362,7 +1296,7 @@ public class InternalMyDslTestLexer extends Lexer {
                 recover(mse);
                 throw mse;}
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2705:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2605:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             loop2:
             do {
                 int alt2=2;
@@ -1411,10 +1345,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2707:10: ( ( '0' .. '9' )+ )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2707:12: ( '0' .. '9' )+
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2607:10: ( ( '0' .. '9' )+ )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2607:12: ( '0' .. '9' )+
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2707:12: ( '0' .. '9' )+
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2607:12: ( '0' .. '9' )+
             int cnt3=0;
             loop3:
             do {
@@ -1428,7 +1362,7 @@ public class InternalMyDslTestLexer extends Lexer {
 
                 switch (alt3) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2707:13: '0' .. '9'
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2607:13: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -1460,10 +1394,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_STRING;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2709:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2709:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2709:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             int alt6=2;
             int LA6_0 = input.LA(1);
 
@@ -1481,10 +1415,10 @@ public class InternalMyDslTestLexer extends Lexer {
             }
             switch (alt6) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2709:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
                     {
                     match('\"'); 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2709:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
                     loop4:
                     do {
                         int alt4=3;
@@ -1500,7 +1434,7 @@ public class InternalMyDslTestLexer extends Lexer {
 
                         switch (alt4) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2709:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -1516,7 +1450,7 @@ public class InternalMyDslTestLexer extends Lexer {
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2709:66: ~ ( ( '\\\\' | '\"' ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:66: ~ ( ( '\\\\' | '\"' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
                     	        input.consume();
@@ -1541,10 +1475,10 @@ public class InternalMyDslTestLexer extends Lexer {
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2709:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:86: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
                     {
                     match('\''); 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2709:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:91: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
                     loop5:
                     do {
                         int alt5=3;
@@ -1560,7 +1494,7 @@ public class InternalMyDslTestLexer extends Lexer {
 
                         switch (alt5) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2709:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:92: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
@@ -1576,7 +1510,7 @@ public class InternalMyDslTestLexer extends Lexer {
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2709:137: ~ ( ( '\\\\' | '\\'' ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2609:137: ~ ( ( '\\\\' | '\\'' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
                     	        input.consume();
@@ -1619,12 +1553,12 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_ML_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2711:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2711:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2611:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2611:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*"); 
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2711:24: ( options {greedy=false; } : . )*
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2611:24: ( options {greedy=false; } : . )*
             loop7:
             do {
                 int alt7=2;
@@ -1649,7 +1583,7 @@ public class InternalMyDslTestLexer extends Lexer {
 
                 switch (alt7) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2711:52: .
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2611:52: .
             	    {
             	    matchAny(); 
 
@@ -1679,12 +1613,12 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_SL_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2713:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2713:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2613:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2613:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("//"); 
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2713:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2613:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop8:
             do {
                 int alt8=2;
@@ -1697,7 +1631,7 @@ public class InternalMyDslTestLexer extends Lexer {
 
                 switch (alt8) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2713:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2613:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) {
             	        input.consume();
@@ -1717,7 +1651,7 @@ public class InternalMyDslTestLexer extends Lexer {
                 }
             } while (true);
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2713:40: ( ( '\\r' )? '\\n' )?
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2613:40: ( ( '\\r' )? '\\n' )?
             int alt10=2;
             int LA10_0 = input.LA(1);
 
@@ -1726,9 +1660,9 @@ public class InternalMyDslTestLexer extends Lexer {
             }
             switch (alt10) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2713:41: ( '\\r' )? '\\n'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2613:41: ( '\\r' )? '\\n'
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2713:41: ( '\\r' )?
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2613:41: ( '\\r' )?
                     int alt9=2;
                     int LA9_0 = input.LA(1);
 
@@ -1737,7 +1671,7 @@ public class InternalMyDslTestLexer extends Lexer {
                     }
                     switch (alt9) {
                         case 1 :
-                            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2713:41: '\\r'
+                            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2613:41: '\\r'
                             {
                             match('\r'); 
 
@@ -1769,10 +1703,10 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2715:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2715:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2615:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2615:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2715:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2615:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt11=0;
             loop11:
             do {
@@ -1826,8 +1760,8 @@ public class InternalMyDslTestLexer extends Lexer {
         try {
             int _type = RULE_ANY_OTHER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2717:16: ( . )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2717:18: .
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2617:16: ( . )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2617:18: .
             {
             matchAny(); 
 
@@ -1842,8 +1776,8 @@ public class InternalMyDslTestLexer extends Lexer {
     // $ANTLR end "RULE_ANY_OTHER"
 
     public void mTokens() throws RecognitionException {
-        // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | T__67 | T__68 | T__69 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
-        int alt12=66;
+        // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
+        int alt12=63;
         alt12 = dfa12.predict(input);
         switch (alt12) {
             case 1 :
@@ -2239,70 +2173,49 @@ public class InternalMyDslTestLexer extends Lexer {
                 }
                 break;
             case 57 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:346: T__67
-                {
-                mT__67(); 
-
-                }
-                break;
-            case 58 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:352: T__68
-                {
-                mT__68(); 
-
-                }
-                break;
-            case 59 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:358: T__69
-                {
-                mT__69(); 
-
-                }
-                break;
-            case 60 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:364: RULE_ID
+                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:346: RULE_ID
                 {
                 mRULE_ID(); 
 
                 }
                 break;
-            case 61 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:372: RULE_INT
+            case 58 :
+                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:354: RULE_INT
                 {
                 mRULE_INT(); 
 
                 }
                 break;
-            case 62 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:381: RULE_STRING
+            case 59 :
+                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:363: RULE_STRING
                 {
                 mRULE_STRING(); 
 
                 }
                 break;
-            case 63 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:393: RULE_ML_COMMENT
+            case 60 :
+                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:375: RULE_ML_COMMENT
                 {
                 mRULE_ML_COMMENT(); 
 
                 }
                 break;
-            case 64 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:409: RULE_SL_COMMENT
+            case 61 :
+                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:391: RULE_SL_COMMENT
                 {
                 mRULE_SL_COMMENT(); 
 
                 }
                 break;
-            case 65 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:425: RULE_WS
+            case 62 :
+                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:407: RULE_WS
                 {
                 mRULE_WS(); 
 
                 }
                 break;
-            case 66 :
-                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:433: RULE_ANY_OTHER
+            case 63 :
+                // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1:415: RULE_ANY_OTHER
                 {
                 mRULE_ANY_OTHER(); 
 
@@ -2316,208 +2229,203 @@ public class InternalMyDslTestLexer extends Lexer {
 
     protected DFA12 dfa12 = new DFA12(this);
     static final String DFA12_eotS =
-        "\1\uffff\1\43\1\uffff\1\43\2\uffff\4\43\2\uffff\16\43\1\41\2\uffff"+
-        "\3\41\2\uffff\1\43\2\uffff\1\43\2\uffff\6\43\2\uffff\22\43\5\uffff"+
-        "\10\43\1\160\5\43\1\166\32\43\1\uffff\5\43\1\uffff\2\43\1\u0099"+
-        "\2\43\1\u009c\1\u009d\1\43\1\u009f\1\u00a0\7\43\1\u00a8\20\43\1"+
-        "\uffff\2\43\2\uffff\1\43\2\uffff\7\43\1\uffff\30\43\1\u00e3\4\43"+
-        "\1\u00e8\34\43\1\uffff\4\43\1\uffff\3\43\1\u010e\13\43\1\u011b\4"+
-        "\43\1\u0121\7\43\1\u012a\7\43\1\u0132\1\uffff\1\43\1\u0134\4\43"+
-        "\1\u0139\5\43\1\uffff\5\43\1\uffff\10\43\1\uffff\1\u014d\4\43\1"+
-        "\u0153\1\43\1\uffff\1\u0155\1\uffff\3\43\1\u0159\1\uffff\6\43\1"+
-        "\u0160\14\43\1\uffff\5\43\1\uffff\1\43\1\uffff\3\43\1\uffff\2\43"+
-        "\1\u0178\3\43\1\uffff\27\43\1\uffff\1\u0196\2\43\1\u0199\1\u019b"+
-        "\27\43\1\u01b3\1\uffff\2\43\1\uffff\1\u01b6\1\uffff\27\43\1\uffff"+
-        "\2\43\1\uffff\10\43\1\u01d8\30\43\1\uffff\1\u01f2\1\43\1\u01f4\11"+
-        "\43\1\u01fe\1\u01ff\12\43\1\u020a\1\uffff\1\43\1\uffff\6\43\1\u0212"+
-        "\1\u0213\1\u0214\2\uffff\5\43\1\u021a\2\43\1\u021d\1\43\1\uffff"+
-        "\1\43\1\u0220\1\43\1\u0222\1\u0223\2\43\3\uffff\4\43\1\u022a\1\uffff"+
-        "\1\u022b\1\43\1\uffff\1\43\1\u022e\1\uffff\1\43\2\uffff\1\u0230"+
-        "\5\43\2\uffff\2\43\1\uffff\1\43\1\uffff\17\43\1\u0248\7\43\1\uffff"+
-        "\11\43\1\u0259\1\43\1\u025b\4\43\1\uffff\1\43\1\uffff\1\u0261\4"+
-        "\43\1\uffff\1\43\1\u0267\2\43\1\u026a\1\uffff\1\u026b\1\u026c\3"+
-        "\uffff";
+        "\1\uffff\1\42\2\uffff\2\42\3\uffff\20\42\1\40\2\uffff\3\40\2\uffff"+
+        "\1\42\3\uffff\4\42\3\uffff\24\42\5\uffff\4\42\1\150\5\42\1\156\30"+
+        "\42\1\uffff\5\42\1\uffff\2\42\1\u008e\3\42\1\u0092\1\42\1\u0094"+
+        "\1\42\1\u0096\1\u0097\7\42\1\u009f\13\42\1\uffff\3\42\1\uffff\1"+
+        "\42\1\uffff\1\42\2\uffff\7\42\1\uffff\25\42\1\u00d4\4\42\1\u00d9"+
+        "\31\42\1\uffff\4\42\1\uffff\25\42\1\u0110\1\42\1\u0113\10\42\1\u011c"+
+        "\16\42\1\u012c\6\42\1\uffff\2\42\1\uffff\1\u0135\4\42\1\u013b\2"+
+        "\42\1\uffff\6\42\1\u0144\10\42\1\uffff\10\42\1\uffff\5\42\1\uffff"+
+        "\4\42\1\u015e\3\42\1\uffff\25\42\1\u0179\3\42\1\uffff\1\u017e\2"+
+        "\42\1\u0181\1\u0183\12\42\1\u018e\12\42\1\uffff\3\42\1\u019c\1\uffff"+
+        "\2\42\1\uffff\1\u019f\1\uffff\12\42\1\uffff\15\42\1\uffff\2\42\1"+
+        "\uffff\13\42\1\u01c4\30\42\1\uffff\1\u01de\1\42\1\u01e0\6\42\1\u01e7"+
+        "\1\u01e8\15\42\1\u01f6\1\uffff\1\42\1\uffff\6\42\2\uffff\5\42\1"+
+        "\u0203\2\42\1\u0206\1\u0207\1\u0208\1\u0209\1\42\1\uffff\1\42\1"+
+        "\u020c\1\42\1\u020e\1\u020f\6\42\1\u0216\1\uffff\1\u0217\1\42\4"+
+        "\uffff\1\42\1\u021a\1\uffff\1\42\2\uffff\1\u021c\5\42\2\uffff\2"+
+        "\42\1\uffff\1\42\1\uffff\17\42\1\u0234\7\42\1\uffff\11\42\1\u0245"+
+        "\1\42\1\u0247\4\42\1\uffff\1\42\1\uffff\1\u024d\4\42\1\uffff\1\42"+
+        "\1\u0253\2\42\1\u0256\1\uffff\1\u0257\1\u0258\3\uffff";
     static final String DFA12_eofS =
-        "\u026d\uffff";
+        "\u0259\uffff";
     static final String DFA12_minS =
-        "\1\0\1\145\1\uffff\1\141\2\uffff\1\156\1\157\1\116\1\141\2\uffff"+
-        "\1\151\1\145\1\110\1\162\1\171\1\157\1\117\1\163\1\124\1\163\1\156"+
-        "\1\165\2\117\1\101\2\uffff\2\0\1\52\2\uffff\1\160\2\uffff\1\164"+
-        "\2\uffff\1\156\1\155\1\156\1\124\1\162\1\157\2\uffff\1\147\1\146"+
-        "\1\154\1\101\1\151\1\160\1\151\1\163\1\117\1\124\1\163\1\142\1\122"+
-        "\1\163\1\143\1\164\1\125\1\116\5\uffff\1\157\1\165\1\141\2\145\1"+
-        "\160\2\145\1\60\1\145\1\166\1\156\1\141\1\165\1\60\1\154\1\160\1"+
-        "\122\1\155\1\166\1\145\1\144\1\151\1\114\1\105\1\145\1\123\1\111"+
-        "\1\145\1\141\1\145\1\102\1\107\1\163\1\151\1\124\2\162\1\157\2\162"+
-        "\1\uffff\1\156\1\151\1\141\1\164\1\151\1\uffff\1\145\1\157\1\60"+
-        "\2\151\2\60\1\143\2\60\1\155\1\171\1\116\1\155\1\160\1\162\1\114"+
-        "\1\60\1\151\1\162\2\171\1\146\1\104\1\156\1\146\1\104\1\164\1\144"+
-        "\1\164\1\151\1\162\1\143\1\163\1\uffff\1\164\1\144\2\uffff\1\103"+
-        "\2\uffff\1\142\1\163\1\107\1\142\1\163\1\120\1\105\1\uffff\1\164"+
-        "\1\145\2\160\1\141\1\171\1\145\1\162\2\145\1\141\1\145\1\111\1\145"+
-        "\1\165\1\157\1\145\1\164\1\145\1\151\1\145\1\157\1\154\1\164\1\60"+
-        "\1\154\1\165\1\162\1\145\1\60\1\157\1\144\2\145\1\143\1\160\1\143"+
-        "\1\157\1\161\1\156\2\143\1\156\1\171\1\144\1\156\1\162\1\156\1\144"+
-        "\1\156\1\151\1\164\1\144\1\166\1\144\1\155\1\171\1\145\1\uffff\1"+
-        "\171\1\154\1\157\1\161\1\uffff\1\162\1\104\1\163\1\60\2\145\1\154"+
-        "\1\166\1\165\1\164\1\145\1\154\1\164\1\160\1\104\1\60\1\147\1\145"+
-        "\1\163\1\104\1\60\1\147\1\157\1\145\1\123\1\145\1\104\1\160\1\60"+
-        "\1\155\1\103\1\141\1\166\1\165\1\171\1\145\1\60\1\uffff\1\163\1"+
-        "\60\1\141\2\151\1\163\1\60\1\141\2\145\1\157\1\145\1\uffff\1\101"+
-        "\1\163\1\150\1\157\1\145\1\uffff\1\101\1\156\1\103\1\164\1\104\1"+
-        "\145\2\157\1\uffff\1\60\1\157\1\164\2\151\1\60\1\154\1\uffff\1\60"+
-        "\1\uffff\1\162\1\144\1\162\1\60\1\uffff\2\162\1\163\2\154\1\163"+
-        "\1\60\1\151\2\154\1\163\1\104\1\141\1\157\1\162\1\141\1\154\2\156"+
-        "\1\uffff\1\156\1\145\1\144\1\162\1\157\1\uffff\1\145\1\uffff\1\141"+
-        "\2\145\1\uffff\1\141\1\146\1\60\2\145\1\163\1\uffff\1\160\2\145"+
-        "\1\163\1\141\1\164\1\155\1\165\1\164\2\145\2\156\1\144\2\145\1\155"+
-        "\1\147\1\164\2\144\1\164\1\141\1\uffff\1\60\1\147\1\145\2\60\1\147"+
-        "\1\145\1\164\1\141\1\160\1\143\1\141\1\147\1\156\4\145\1\103\2\144"+
-        "\1\160\1\141\1\151\2\122\1\151\1\143\1\60\1\uffff\1\141\1\155\1"+
-        "\uffff\1\60\1\uffff\1\141\1\155\1\141\1\124\1\157\1\164\1\124\1"+
-        "\141\1\164\1\170\1\143\1\170\1\143\1\157\2\122\1\157\1\164\4\157"+
-        "\1\145\1\uffff\1\164\1\142\1\uffff\1\164\1\142\1\124\1\171\1\156"+
-        "\1\165\1\171\1\164\1\60\4\164\1\155\2\157\1\156\1\151\1\156\2\154"+
-        "\1\156\1\163\1\151\1\154\1\151\1\154\1\171\1\160\1\145\1\162\1\160"+
-        "\1\151\1\uffff\1\60\1\157\1\60\1\157\1\160\2\154\1\145\1\157\1\163"+
-        "\2\145\2\60\1\157\1\171\1\157\1\171\1\160\1\145\1\156\2\145\1\157"+
-        "\1\60\1\uffff\1\162\1\uffff\1\162\1\157\2\145\2\156\3\60\2\uffff"+
-        "\1\156\1\103\1\156\1\103\1\145\1\60\1\164\1\101\1\60\1\156\1\uffff"+
-        "\1\163\1\60\1\156\2\60\1\164\1\103\3\uffff\1\103\1\157\1\103\1\157"+
-        "\1\60\1\uffff\1\60\1\163\1\uffff\1\103\1\60\1\uffff\1\145\2\uffff"+
-        "\1\60\2\157\1\156\1\157\1\156\2\uffff\1\163\1\157\1\uffff\1\156"+
-        "\1\uffff\2\156\1\164\1\156\1\164\1\145\1\156\1\164\2\156\1\145\1"+
-        "\156\1\145\1\155\1\156\1\60\2\145\1\170\1\145\1\170\1\142\1\145"+
-        "\1\uffff\2\143\1\164\1\143\1\164\1\154\1\143\2\164\1\60\1\164\1"+
-        "\60\1\171\1\164\2\157\1\uffff\1\157\1\uffff\1\60\1\157\3\162\1\uffff"+
-        "\1\162\1\60\2\163\1\60\1\uffff\2\60\3\uffff";
+        "\1\0\1\145\2\uffff\1\116\1\141\3\uffff\1\151\1\145\1\110\1\156"+
+        "\1\162\1\171\1\141\1\157\1\117\1\163\1\124\1\163\1\156\1\165\2\117"+
+        "\1\101\2\uffff\2\0\1\52\2\uffff\1\160\3\uffff\1\156\1\124\1\162"+
+        "\1\157\3\uffff\1\147\1\146\1\154\1\101\1\156\1\151\1\160\1\164\1"+
+        "\151\1\163\1\117\1\124\1\163\1\142\1\122\1\163\1\143\1\164\1\125"+
+        "\1\116\5\uffff\1\157\1\165\2\145\1\60\1\145\1\166\1\156\1\141\1"+
+        "\165\1\60\1\154\1\160\1\122\1\145\1\155\1\166\1\145\1\141\1\144"+
+        "\1\151\1\114\1\105\1\145\1\123\1\111\1\145\1\141\1\145\1\102\1\107"+
+        "\1\163\1\151\2\162\1\uffff\1\156\1\151\1\141\1\164\1\151\1\uffff"+
+        "\1\145\1\157\1\60\1\162\2\151\1\60\1\124\1\60\1\143\2\60\1\155\1"+
+        "\171\1\116\1\155\1\160\1\162\1\114\1\60\1\151\1\162\1\146\1\104"+
+        "\1\164\1\144\1\164\1\151\1\162\1\143\1\163\1\uffff\1\104\1\164\1"+
+        "\144\1\uffff\1\171\1\uffff\1\103\2\uffff\1\142\1\163\1\107\1\142"+
+        "\1\163\1\120\1\105\1\uffff\1\164\1\145\1\141\1\145\1\111\1\145\1"+
+        "\165\1\157\1\145\1\164\1\145\1\171\1\145\1\162\1\145\1\151\1\145"+
+        "\1\160\1\157\1\154\1\164\1\60\1\154\1\165\1\162\1\145\1\60\1\157"+
+        "\1\144\2\143\1\156\1\171\1\144\1\156\1\162\1\156\1\144\1\156\1\151"+
+        "\1\164\1\144\1\160\1\143\1\157\1\161\1\166\1\144\1\145\1\155\1\171"+
+        "\1\145\1\uffff\1\171\1\154\1\157\1\161\1\uffff\1\162\1\104\1\145"+
+        "\1\154\1\164\1\160\1\104\1\147\1\145\1\163\1\104\1\147\1\157\1\145"+
+        "\1\123\1\145\1\154\1\166\1\165\1\145\1\104\1\60\1\160\1\60\1\155"+
+        "\1\103\1\141\1\166\1\165\1\171\1\157\1\145\1\60\1\141\2\145\1\157"+
+        "\1\145\1\101\1\163\1\150\1\157\1\145\1\101\1\156\1\103\1\164\1\60"+
+        "\1\141\2\151\1\104\1\157\1\145\1\uffff\2\157\1\uffff\1\60\1\157"+
+        "\1\164\2\151\1\60\2\154\1\uffff\2\162\1\163\2\154\1\163\1\60\1\151"+
+        "\2\154\1\163\1\104\1\141\1\157\1\162\1\uffff\1\162\1\144\1\162\1"+
+        "\141\2\154\2\156\1\uffff\1\156\1\145\1\144\1\162\1\157\1\uffff\2"+
+        "\145\1\141\1\146\1\60\2\145\1\163\1\uffff\1\160\2\145\1\163\1\141"+
+        "\1\164\1\155\1\165\1\141\2\145\1\164\3\145\2\156\1\144\2\145\1\155"+
+        "\1\60\1\147\1\164\1\141\1\uffff\1\60\1\147\1\145\2\60\1\147\1\145"+
+        "\1\164\1\141\1\160\1\143\1\164\2\144\1\141\1\60\1\147\1\156\4\145"+
+        "\1\103\2\144\1\160\1\uffff\1\141\1\151\1\143\1\60\1\uffff\1\141"+
+        "\1\155\1\uffff\1\60\1\uffff\1\141\1\155\1\141\1\124\1\157\1\164"+
+        "\1\151\2\122\1\124\1\uffff\1\141\1\164\1\170\1\143\1\170\1\143\1"+
+        "\157\2\122\1\157\1\164\1\157\1\145\1\uffff\1\164\1\142\1\uffff\1"+
+        "\164\1\142\1\124\1\171\1\156\1\165\3\157\1\171\1\164\1\60\4\164"+
+        "\1\155\2\157\1\156\1\151\1\156\1\163\1\151\1\154\1\151\1\154\1\171"+
+        "\1\160\1\145\1\162\1\156\2\154\1\160\1\151\1\uffff\1\60\1\157\1"+
+        "\60\1\157\1\160\2\154\1\145\1\157\2\60\1\157\1\171\1\157\1\171\1"+
+        "\160\1\145\1\156\1\145\1\163\3\145\1\157\1\60\1\uffff\1\162\1\uffff"+
+        "\1\162\1\157\2\145\2\156\2\uffff\1\156\1\103\1\156\1\103\1\145\1"+
+        "\60\1\164\1\101\4\60\1\156\1\uffff\1\163\1\60\1\156\2\60\1\164\2"+
+        "\103\1\157\1\103\1\157\1\60\1\uffff\1\60\1\163\4\uffff\1\103\1\60"+
+        "\1\uffff\1\145\2\uffff\1\60\2\157\1\156\1\157\1\156\2\uffff\1\163"+
+        "\1\157\1\uffff\1\156\1\uffff\2\156\1\164\1\156\1\164\1\145\1\156"+
+        "\1\164\2\156\1\145\1\156\1\145\1\155\1\156\1\60\2\145\1\170\1\145"+
+        "\1\170\1\142\1\145\1\uffff\2\143\1\164\1\143\1\164\1\154\1\143\2"+
+        "\164\1\60\1\164\1\60\1\171\1\164\2\157\1\uffff\1\157\1\uffff\1\60"+
+        "\1\157\3\162\1\uffff\1\162\1\60\2\163\1\60\1\uffff\2\60\3\uffff";
     static final String DFA12_maxS =
-        "\1\uffff\1\145\1\uffff\1\141\2\uffff\1\156\1\157\1\156\1\162\2"+
-        "\uffff\1\151\1\145\1\157\1\162\1\171\1\157\1\141\1\163\1\165\1\163"+
-        "\1\156\1\165\2\117\1\172\2\uffff\2\uffff\1\57\2\uffff\1\161\2\uffff"+
-        "\1\164\2\uffff\1\164\1\155\1\164\1\124\1\162\1\157\2\uffff\1\147"+
-        "\1\161\1\155\1\101\1\157\1\160\1\151\1\163\1\117\1\124\1\163\1\142"+
-        "\1\122\1\163\1\143\1\164\1\125\1\116\5\uffff\1\157\1\165\1\141\2"+
-        "\145\1\160\2\145\1\172\1\145\1\166\1\156\1\141\1\165\1\172\1\154"+
-        "\1\160\1\122\1\155\1\166\1\145\1\144\1\151\1\114\1\105\1\145\1\123"+
-        "\1\111\1\145\1\141\1\145\1\102\1\107\1\163\1\151\1\164\2\162\1\157"+
-        "\2\162\1\uffff\1\156\1\151\1\141\1\164\1\151\1\uffff\1\145\1\157"+
-        "\1\172\2\151\2\172\1\143\2\172\1\155\1\171\1\116\1\155\1\160\1\162"+
-        "\1\114\1\172\1\151\1\162\2\171\1\146\1\124\1\156\1\146\1\104\1\164"+
-        "\1\144\1\164\1\151\1\162\1\143\1\163\1\uffff\1\164\1\144\2\uffff"+
-        "\1\103\2\uffff\1\142\1\163\1\107\1\142\1\163\1\122\1\105\1\uffff"+
-        "\1\164\1\145\2\160\1\141\1\171\1\145\1\162\2\145\1\141\1\145\1\124"+
-        "\1\151\1\165\1\157\1\151\1\164\2\151\1\145\1\157\1\154\1\164\1\172"+
-        "\1\154\1\165\1\162\1\145\1\172\1\157\1\144\2\145\1\143\1\160\1\143"+
-        "\1\157\1\161\1\156\2\143\1\156\1\171\1\163\1\156\1\162\1\156\1\163"+
-        "\1\156\1\151\1\164\1\144\1\166\1\144\1\155\1\171\1\145\1\uffff\1"+
-        "\171\1\154\1\157\1\161\1\uffff\1\162\1\104\1\163\1\172\2\145\1\154"+
-        "\1\166\1\165\1\164\1\145\1\154\1\164\1\160\1\122\1\172\1\147\1\145"+
-        "\1\163\1\122\1\172\1\147\1\157\1\145\1\123\1\145\1\104\1\160\1\172"+
-        "\1\155\1\103\1\141\1\166\1\165\1\171\1\145\1\172\1\uffff\1\163\1"+
-        "\172\1\141\2\151\1\163\1\172\1\141\2\145\1\157\1\145\1\uffff\1\101"+
-        "\1\163\1\150\1\157\1\145\1\uffff\1\101\1\156\1\104\1\164\1\104\1"+
-        "\145\2\157\1\uffff\1\172\1\157\1\164\2\151\1\172\1\154\1\uffff\1"+
-        "\172\1\uffff\1\162\1\144\1\162\1\172\1\uffff\2\162\1\163\2\154\1"+
-        "\163\1\172\1\151\2\154\1\163\1\104\1\141\1\157\1\162\1\141\1\154"+
-        "\2\156\1\uffff\1\156\1\145\1\144\1\162\1\157\1\uffff\1\145\1\uffff"+
-        "\1\141\2\145\1\uffff\1\141\1\146\1\172\2\145\1\163\1\uffff\1\160"+
-        "\2\145\1\163\1\141\1\164\1\155\1\165\1\164\2\145\2\164\1\144\2\145"+
-        "\1\155\1\147\1\164\2\144\1\164\1\141\1\uffff\1\172\1\147\1\145\2"+
-        "\172\1\147\1\145\1\164\1\141\1\160\1\143\1\141\1\147\1\156\4\145"+
-        "\1\103\2\144\1\160\1\141\1\151\2\122\1\151\1\143\1\172\1\uffff\1"+
-        "\141\1\155\1\uffff\1\172\1\uffff\1\141\1\155\1\141\1\124\1\157\1"+
-        "\164\1\124\1\141\1\164\1\170\1\143\1\170\1\143\1\157\2\122\1\157"+
-        "\1\164\4\157\1\145\1\uffff\1\164\1\142\1\uffff\1\164\1\142\1\124"+
-        "\1\171\1\156\1\165\1\171\1\164\1\172\4\164\1\155\2\157\1\156\1\151"+
-        "\1\156\2\154\1\156\1\163\1\151\1\154\1\151\1\154\1\171\1\160\1\145"+
-        "\1\162\1\160\1\151\1\uffff\1\172\1\157\1\172\1\157\1\160\2\154\1"+
-        "\145\1\157\1\163\2\145\2\172\1\157\1\171\1\157\1\171\1\160\1\145"+
-        "\1\156\2\145\1\157\1\172\1\uffff\1\162\1\uffff\1\162\1\157\2\145"+
-        "\2\156\3\172\2\uffff\1\156\1\103\1\156\1\103\1\145\1\172\1\164\1"+
-        "\101\1\172\1\156\1\uffff\1\163\1\172\1\156\2\172\1\164\1\103\3\uffff"+
-        "\1\103\1\157\1\103\1\157\1\172\1\uffff\1\172\1\163\1\uffff\1\103"+
-        "\1\172\1\uffff\1\145\2\uffff\1\172\2\157\1\156\1\157\1\156\2\uffff"+
-        "\1\163\1\157\1\uffff\1\156\1\uffff\2\156\1\164\1\156\1\164\1\145"+
-        "\1\156\1\164\2\156\1\145\1\156\1\145\1\155\1\156\1\172\2\145\1\170"+
-        "\1\145\1\170\1\142\1\145\1\uffff\2\143\1\164\1\143\1\164\1\154\1"+
-        "\143\2\164\1\172\1\164\1\172\1\171\1\164\2\157\1\uffff\1\157\1\uffff"+
-        "\1\172\1\157\3\162\1\uffff\1\162\1\172\2\163\1\172\1\uffff\2\172"+
-        "\3\uffff";
+        "\1\uffff\1\145\2\uffff\1\156\1\162\3\uffff\1\151\1\145\1\157\1"+
+        "\156\1\162\1\171\1\141\1\157\1\141\1\163\1\165\1\163\1\156\1\165"+
+        "\2\117\1\172\2\uffff\2\uffff\1\57\2\uffff\1\161\3\uffff\1\164\1"+
+        "\124\1\162\1\157\3\uffff\1\147\1\161\1\155\1\101\1\156\1\157\1\160"+
+        "\1\164\1\151\1\163\1\117\1\124\1\163\1\142\1\122\1\163\1\143\1\164"+
+        "\1\125\1\116\5\uffff\1\157\1\165\2\145\1\172\1\145\1\166\1\156\1"+
+        "\141\1\165\1\172\1\154\1\160\1\122\1\145\1\155\1\166\1\145\1\141"+
+        "\1\144\1\151\1\114\1\105\1\145\1\123\1\111\1\145\1\141\1\145\1\102"+
+        "\1\107\1\163\1\151\2\162\1\uffff\1\156\1\151\1\141\1\164\1\151\1"+
+        "\uffff\1\145\1\157\1\172\1\162\2\151\1\172\1\124\1\172\1\143\2\172"+
+        "\1\155\1\171\1\116\1\155\1\160\1\162\1\114\1\172\1\151\1\162\1\146"+
+        "\1\104\1\164\1\144\1\164\1\151\1\162\1\143\1\163\1\uffff\1\124\1"+
+        "\164\1\144\1\uffff\1\171\1\uffff\1\103\2\uffff\1\142\1\163\1\107"+
+        "\1\142\1\163\1\122\1\105\1\uffff\1\164\1\145\1\141\1\145\1\124\1"+
+        "\151\1\165\1\157\1\151\1\164\1\151\1\171\1\145\1\162\1\145\1\151"+
+        "\1\145\1\160\1\157\1\154\1\164\1\172\1\154\1\165\1\162\1\145\1\172"+
+        "\1\157\1\144\2\143\1\156\1\171\1\144\1\156\1\162\1\156\1\144\1\156"+
+        "\1\151\1\164\1\144\1\160\1\143\1\157\1\161\1\166\1\144\1\145\1\155"+
+        "\1\171\1\145\1\uffff\1\171\1\154\1\157\1\161\1\uffff\1\162\1\122"+
+        "\1\145\1\154\1\164\1\160\1\122\1\147\1\145\1\163\1\122\1\147\1\157"+
+        "\1\145\1\123\1\145\1\154\1\166\1\165\1\145\1\122\1\172\1\160\1\172"+
+        "\1\155\1\103\1\141\1\166\1\165\1\171\1\157\1\145\1\172\1\141\2\145"+
+        "\1\157\1\145\1\101\1\163\1\150\1\157\1\145\1\101\1\156\1\104\1\164"+
+        "\1\172\1\141\2\151\1\104\1\157\1\145\1\uffff\2\157\1\uffff\1\172"+
+        "\1\157\1\164\2\151\1\172\2\154\1\uffff\2\162\1\163\2\154\1\163\1"+
+        "\172\1\151\2\154\1\163\1\104\1\141\1\157\1\162\1\uffff\1\162\1\144"+
+        "\1\162\1\141\2\154\2\156\1\uffff\1\156\1\145\1\144\1\162\1\157\1"+
+        "\uffff\2\145\1\141\1\146\1\172\2\145\1\163\1\uffff\1\160\2\145\1"+
+        "\163\1\141\1\164\1\155\1\165\1\141\2\145\1\164\3\145\2\164\1\144"+
+        "\2\145\1\155\1\172\1\147\1\164\1\141\1\uffff\1\172\1\147\1\145\2"+
+        "\172\1\147\1\145\1\164\1\141\1\160\1\143\1\164\2\144\1\141\1\172"+
+        "\1\147\1\156\4\145\1\103\2\144\1\160\1\uffff\1\141\1\151\1\143\1"+
+        "\172\1\uffff\1\141\1\155\1\uffff\1\172\1\uffff\1\141\1\155\1\141"+
+        "\1\124\1\157\1\164\1\151\2\122\1\124\1\uffff\1\141\1\164\1\170\1"+
+        "\143\1\170\1\143\1\157\2\122\1\157\1\164\1\157\1\145\1\uffff\1\164"+
+        "\1\142\1\uffff\1\164\1\142\1\124\1\171\1\156\1\165\3\157\1\171\1"+
+        "\164\1\172\4\164\1\155\2\157\1\156\1\151\1\156\1\163\1\151\1\154"+
+        "\1\151\1\154\1\171\1\160\1\145\1\162\1\156\2\154\1\160\1\151\1\uffff"+
+        "\1\172\1\157\1\172\1\157\1\160\2\154\1\145\1\157\2\172\1\157\1\171"+
+        "\1\157\1\171\1\160\1\145\1\156\1\145\1\163\3\145\1\157\1\172\1\uffff"+
+        "\1\162\1\uffff\1\162\1\157\2\145\2\156\2\uffff\1\156\1\103\1\156"+
+        "\1\103\1\145\1\172\1\164\1\101\4\172\1\156\1\uffff\1\163\1\172\1"+
+        "\156\2\172\1\164\2\103\1\157\1\103\1\157\1\172\1\uffff\1\172\1\163"+
+        "\4\uffff\1\103\1\172\1\uffff\1\145\2\uffff\1\172\2\157\1\156\1\157"+
+        "\1\156\2\uffff\1\163\1\157\1\uffff\1\156\1\uffff\2\156\1\164\1\156"+
+        "\1\164\1\145\1\156\1\164\2\156\1\145\1\156\1\145\1\155\1\156\1\172"+
+        "\2\145\1\170\1\145\1\170\1\142\1\145\1\uffff\2\143\1\164\1\143\1"+
+        "\164\1\154\1\143\2\164\1\172\1\164\1\172\1\171\1\164\2\157\1\uffff"+
+        "\1\157\1\uffff\1\172\1\157\3\162\1\uffff\1\162\1\172\2\163\1\172"+
+        "\1\uffff\2\172\3\uffff";
     static final String DFA12_acceptS =
-        "\2\uffff\1\2\1\uffff\1\4\1\5\4\uffff\1\12\1\13\17\uffff\1\74\1"+
-        "\75\3\uffff\1\101\1\102\1\uffff\1\74\1\2\1\uffff\1\4\1\5\6\uffff"+
-        "\1\12\1\13\22\uffff\1\75\1\76\1\77\1\100\1\101\51\uffff\1\65\5\uffff"+
-        "\1\30\42\uffff\1\71\2\uffff\1\27\1\33\1\uffff\1\67\1\72\7\uffff"+
-        "\1\73\72\uffff\1\66\4\uffff\1\70\45\uffff\1\32\14\uffff\1\34\5\uffff"+
-        "\1\35\10\uffff\1\40\7\uffff\1\3\1\uffff\1\22\4\uffff\1\10\23\uffff"+
-        "\1\41\5\uffff\1\1\1\uffff\1\6\3\uffff\1\7\6\uffff\1\14\27\uffff"+
-        "\1\24\35\uffff\1\53\2\uffff\1\16\1\uffff\1\52\27\uffff\1\17\2\uffff"+
-        "\1\20\41\uffff\1\36\31\uffff\1\57\1\uffff\1\47\11\uffff\1\31\1\11"+
-        "\12\uffff\1\43\7\uffff\1\25\1\60\1\63\5\uffff\1\23\2\uffff\1\26"+
-        "\2\uffff\1\51\1\uffff\1\61\1\64\6\uffff\1\21\1\37\2\uffff\1\44\1"+
-        "\uffff\1\15\27\uffff\1\50\20\uffff\1\54\1\uffff\1\55\5\uffff\1\42"+
-        "\5\uffff\1\62\2\uffff\1\56\1\45\1\46";
+        "\2\uffff\1\2\1\3\2\uffff\1\6\1\7\1\10\21\uffff\1\71\1\72\3\uffff"+
+        "\1\76\1\77\1\uffff\1\71\1\2\1\3\4\uffff\1\6\1\7\1\10\24\uffff\1"+
+        "\72\1\73\1\74\1\75\1\76\43\uffff\1\62\5\uffff\1\25\37\uffff\1\66"+
+        "\3\uffff\1\24\1\uffff\1\30\1\uffff\1\64\1\67\7\uffff\1\70\64\uffff"+
+        "\1\63\4\uffff\1\65\66\uffff\1\27\2\uffff\1\35\10\uffff\1\4\17\uffff"+
+        "\1\17\10\uffff\1\36\5\uffff\1\1\10\uffff\1\11\31\uffff\1\21\32\uffff"+
+        "\1\32\4\uffff\1\50\2\uffff\1\13\1\uffff\1\47\12\uffff\1\31\15\uffff"+
+        "\1\14\2\uffff\1\15\44\uffff\1\33\31\uffff\1\54\1\uffff\1\44\6\uffff"+
+        "\1\26\1\5\15\uffff\1\40\14\uffff\1\20\2\uffff\1\22\1\55\1\60\1\23"+
+        "\2\uffff\1\46\1\uffff\1\56\1\61\6\uffff\1\16\1\34\2\uffff\1\41\1"+
+        "\uffff\1\12\27\uffff\1\45\20\uffff\1\51\1\uffff\1\52\5\uffff\1\37"+
+        "\5\uffff\1\57\2\uffff\1\53\1\42\1\43";
     static final String DFA12_specialS =
-        "\1\2\34\uffff\1\1\1\0\u024e\uffff}>";
+        "\1\0\33\uffff\1\1\1\2\u023b\uffff}>";
     static final String[] DFA12_transitionS = {
-            "\11\41\2\40\2\41\1\40\22\41\1\40\1\41\1\35\4\41\1\36\1\12\1"+
-            "\13\2\41\1\4\2\41\1\37\12\34\7\41\1\25\1\22\1\16\1\30\4\33\1"+
-            "\10\2\33\1\31\3\33\1\17\1\33\1\1\1\24\7\33\3\41\1\32\1\33\1"+
-            "\41\1\23\1\33\1\7\1\3\1\26\3\33\1\6\5\33\1\27\1\11\1\33\1\15"+
-            "\1\14\1\20\1\33\1\21\4\33\1\2\1\41\1\5\uff82\41",
-            "\1\42",
+            "\11\40\2\37\2\40\1\37\22\40\1\37\1\40\1\34\4\40\1\35\1\6\1"+
+            "\10\2\40\1\7\2\40\1\36\12\33\7\40\1\24\1\21\1\13\1\27\4\32\1"+
+            "\4\2\32\1\30\3\32\1\15\1\32\1\1\1\23\7\32\3\40\1\31\1\32\1\40"+
+            "\1\22\2\32\1\17\1\25\3\32\1\14\5\32\1\26\1\5\1\32\1\12\1\11"+
+            "\1\16\1\32\1\20\4\32\1\2\1\40\1\3\uff82\40",
+            "\1\41",
             "",
-            "\1\45",
             "",
+            "\1\46\37\uffff\1\45",
+            "\1\47\20\uffff\1\50",
             "",
-            "\1\50",
-            "\1\51",
-            "\1\53\37\uffff\1\52",
-            "\1\54\20\uffff\1\55",
             "",
             "",
+            "\1\54",
+            "\1\55",
+            "\1\57\46\uffff\1\56",
             "\1\60",
             "\1\61",
-            "\1\63\46\uffff\1\62",
+            "\1\62",
+            "\1\63",
             "\1\64",
-            "\1\65",
-            "\1\66",
-            "\1\70\11\uffff\1\71\7\uffff\1\67",
-            "\1\72",
-            "\1\74\40\uffff\1\73",
+            "\1\66\11\uffff\1\67\7\uffff\1\65",
+            "\1\70",
+            "\1\72\40\uffff\1\71",
+            "\1\73",
+            "\1\74",
             "\1\75",
             "\1\76",
             "\1\77",
-            "\1\100",
-            "\1\101",
-            "\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\32\42\4\uffff\1\42\1\uffff\32\42",
             "",
             "",
-            "\0\103",
-            "\0\103",
-            "\1\104\4\uffff\1\105",
+            "\0\101",
+            "\0\101",
+            "\1\102\4\uffff\1\103",
             "",
             "",
-            "\1\107\1\110",
+            "\1\105\1\106",
             "",
             "",
+            "",
+            "\1\110\5\uffff\1\107",
             "\1\111",
+            "\1\112",
+            "\1\113",
             "",
             "",
-            "\1\113\5\uffff\1\112",
-            "\1\114",
-            "\1\116\5\uffff\1\115",
-            "\1\117",
-            "\1\120",
-            "\1\121",
-            "",
             "",
+            "\1\114",
+            "\1\117\5\uffff\1\115\4\uffff\1\116",
+            "\1\120\1\121",
             "\1\122",
-            "\1\125\5\uffff\1\123\4\uffff\1\124",
-            "\1\126\1\127",
+            "\1\123",
+            "\1\124\5\uffff\1\125",
+            "\1\126",
+            "\1\127",
             "\1\130",
-            "\1\131\5\uffff\1\132",
+            "\1\131",
+            "\1\132",
             "\1\133",
             "\1\134",
             "\1\135",
@@ -2527,30 +2435,30 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\141",
             "\1\142",
             "\1\143",
-            "\1\144",
-            "\1\145",
-            "\1\146",
-            "\1\147",
             "",
             "",
             "",
             "",
             "",
-            "\1\150",
+            "\1\144",
+            "\1\145",
+            "\1\146",
+            "\1\147",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\151",
             "\1\152",
             "\1\153",
             "\1\154",
             "\1\155",
-            "\1\156",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\157",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\160",
             "\1\161",
             "\1\162",
             "\1\163",
             "\1\164",
             "\1\165",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\166",
             "\1\167",
             "\1\170",
             "\1\171",
@@ -2567,33 +2475,34 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u0084",
             "\1\u0085",
             "\1\u0086",
+            "",
             "\1\u0087",
             "\1\u0088",
             "\1\u0089",
             "\1\u008a",
-            "\1\u008c\37\uffff\1\u008b",
+            "\1\u008b",
+            "",
+            "\1\u008c",
             "\1\u008d",
-            "\1\u008e",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u008f",
             "\1\u0090",
             "\1\u0091",
-            "",
-            "\1\u0092",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0093",
-            "\1\u0094",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0095",
-            "\1\u0096",
-            "",
-            "\1\u0097",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0098",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0099",
             "\1\u009a",
             "\1\u009b",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u009c",
+            "\1\u009d",
             "\1\u009e",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\1\u00a0",
             "\1\u00a1",
             "\1\u00a2",
             "\1\u00a3",
@@ -2601,42 +2510,38 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u00a5",
             "\1\u00a6",
             "\1\u00a7",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u00a8",
             "\1\u00a9",
             "\1\u00aa",
-            "\1\u00ab",
-            "\1\u00ac",
-            "\1\u00ad",
-            "\1\u00af\13\uffff\1\u00b0\1\uffff\1\u00b1\1\uffff\1\u00ae",
+            "",
+            "\1\u00ac\13\uffff\1\u00ad\1\uffff\1\u00ae\1\uffff\1\u00ab",
+            "\1\u00af",
+            "\1\u00b0",
+            "",
+            "\1\u00b1",
+            "",
             "\1\u00b2",
+            "",
+            "",
             "\1\u00b3",
             "\1\u00b4",
             "\1\u00b5",
             "\1\u00b6",
             "\1\u00b7",
-            "\1\u00b8",
-            "\1\u00b9",
+            "\1\u00b8\1\uffff\1\u00b9",
             "\1\u00ba",
-            "\1\u00bb",
             "",
+            "\1\u00bb",
             "\1\u00bc",
             "\1\u00bd",
-            "",
-            "",
             "\1\u00be",
-            "",
-            "",
-            "\1\u00bf",
-            "\1\u00c0",
-            "\1\u00c1",
-            "\1\u00c2",
+            "\1\u00bf\12\uffff\1\u00c0",
+            "\1\u00c1\3\uffff\1\u00c2",
             "\1\u00c3",
-            "\1\u00c4\1\uffff\1\u00c5",
-            "\1\u00c6",
-            "",
+            "\1\u00c4",
+            "\1\u00c5\3\uffff\1\u00c6",
             "\1\u00c7",
-            "\1\u00c8",
-            "\1\u00c9",
+            "\1\u00c9\3\uffff\1\u00c8",
             "\1\u00ca",
             "\1\u00cb",
             "\1\u00cc",
@@ -2646,24 +2551,28 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u00d0",
             "\1\u00d1",
             "\1\u00d2",
-            "\1\u00d3\12\uffff\1\u00d4",
-            "\1\u00d5\3\uffff\1\u00d6",
+            "\1\u00d3",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\1\u00d5",
+            "\1\u00d6",
             "\1\u00d7",
             "\1\u00d8",
-            "\1\u00d9\3\uffff\1\u00da",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\1\u00da",
             "\1\u00db",
-            "\1\u00dd\3\uffff\1\u00dc",
+            "\1\u00dc",
+            "\1\u00dd",
             "\1\u00de",
             "\1\u00df",
             "\1\u00e0",
             "\1\u00e1",
             "\1\u00e2",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u00e3",
             "\1\u00e4",
             "\1\u00e5",
             "\1\u00e6",
             "\1\u00e7",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u00e8",
             "\1\u00e9",
             "\1\u00ea",
             "\1\u00eb",
@@ -2674,51 +2583,51 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u00f0",
             "\1\u00f1",
             "\1\u00f2",
+            "",
             "\1\u00f3",
             "\1\u00f4",
             "\1\u00f5",
             "\1\u00f6",
-            "\1\u00f7\16\uffff\1\u00f8",
-            "\1\u00f9",
+            "",
+            "\1\u00f7",
+            "\1\u00f9\15\uffff\1\u00f8",
             "\1\u00fa",
             "\1\u00fb",
-            "\1\u00fc\16\uffff\1\u00fd",
-            "\1\u00fe",
-            "\1\u00ff",
+            "\1\u00fc",
+            "\1\u00fd",
+            "\1\u00ff\15\uffff\1\u00fe",
             "\1\u0100",
             "\1\u0101",
             "\1\u0102",
-            "\1\u0103",
-            "\1\u0104",
+            "\1\u0104\15\uffff\1\u0103",
             "\1\u0105",
             "\1\u0106",
-            "",
             "\1\u0107",
             "\1\u0108",
             "\1\u0109",
             "\1\u010a",
-            "",
             "\1\u010b",
             "\1\u010c",
             "\1\u010d",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u010f",
-            "\1\u0110",
+            "\1\u010f\15\uffff\1\u010e",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0111",
-            "\1\u0112",
-            "\1\u0113",
+            "\12\42\7\uffff\2\42\1\u0112\27\42\4\uffff\1\42\1\uffff\32"+
+            "\42",
             "\1\u0114",
             "\1\u0115",
             "\1\u0116",
             "\1\u0117",
             "\1\u0118",
-            "\1\u011a\15\uffff\1\u0119",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u011c",
+            "\1\u0119",
+            "\1\u011a",
+            "\1\u011b",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u011d",
             "\1\u011e",
-            "\1\u0120\15\uffff\1\u011f",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u011f",
+            "\1\u0120",
+            "\1\u0121",
             "\1\u0122",
             "\1\u0123",
             "\1\u0124",
@@ -2726,69 +2635,69 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u0126",
             "\1\u0127",
             "\1\u0128",
-            "\12\43\7\uffff\2\43\1\u0129\27\43\4\uffff\1\43\1\uffff\32"+
-            "\43",
+            "\1\u012a\1\u0129",
             "\1\u012b",
-            "\1\u012c",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u012d",
             "\1\u012e",
             "\1\u012f",
             "\1\u0130",
             "\1\u0131",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0132",
             "",
             "\1\u0133",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u0135",
+            "\1\u0134",
+            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0136",
             "\1\u0137",
             "\1\u0138",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u013a",
-            "\1\u013b",
+            "\1\u0139",
+            "\12\42\7\uffff\2\42\1\u013a\27\42\4\uffff\1\42\1\uffff\32"+
+            "\42",
             "\1\u013c",
             "\1\u013d",
-            "\1\u013e",
             "",
+            "\1\u013e",
             "\1\u013f",
             "\1\u0140",
             "\1\u0141",
             "\1\u0142",
             "\1\u0143",
-            "",
-            "\1\u0144",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0145",
-            "\1\u0147\1\u0146",
+            "\1\u0146",
+            "\1\u0147",
             "\1\u0148",
             "\1\u0149",
             "\1\u014a",
             "\1\u014b",
             "\1\u014c",
             "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u014d",
             "\1\u014e",
             "\1\u014f",
             "\1\u0150",
             "\1\u0151",
-            "\12\43\7\uffff\2\43\1\u0152\27\43\4\uffff\1\43\1\uffff\32"+
-            "\43",
+            "\1\u0152",
+            "\1\u0153",
             "\1\u0154",
             "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "",
+            "\1\u0155",
             "\1\u0156",
             "\1\u0157",
             "\1\u0158",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0159",
             "",
             "\1\u015a",
             "\1\u015b",
             "\1\u015c",
             "\1\u015d",
-            "\1\u015e",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u015f",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0160",
             "\1\u0161",
+            "",
             "\1\u0162",
             "\1\u0163",
             "\1\u0164",
@@ -2800,61 +2709,60 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u016a",
             "\1\u016b",
             "\1\u016c",
-            "",
             "\1\u016d",
             "\1\u016e",
             "\1\u016f",
             "\1\u0170",
-            "\1\u0171",
-            "",
-            "\1\u0172",
-            "",
-            "\1\u0173",
-            "\1\u0174",
+            "\1\u0172\5\uffff\1\u0171",
+            "\1\u0174\5\uffff\1\u0173",
             "\1\u0175",
-            "",
             "\1\u0176",
             "\1\u0177",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u0179",
+            "\1\u0178",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u017a",
             "\1\u017b",
-            "",
             "\1\u017c",
-            "\1\u017d",
-            "\1\u017e",
+            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\22\42\1\u017d\7"+
+            "\42",
             "\1\u017f",
             "\1\u0180",
-            "\1\u0181",
-            "\1\u0182",
-            "\1\u0183",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\22\42\1\u0182\7"+
+            "\42",
             "\1\u0184",
             "\1\u0185",
             "\1\u0186",
-            "\1\u0188\5\uffff\1\u0187",
-            "\1\u018a\5\uffff\1\u0189",
+            "\1\u0187",
+            "\1\u0188",
+            "\1\u0189",
+            "\1\u018a",
             "\1\u018b",
             "\1\u018c",
             "\1\u018d",
-            "\1\u018e",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u018f",
             "\1\u0190",
             "\1\u0191",
             "\1\u0192",
             "\1\u0193",
             "\1\u0194",
-            "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\22\43\1\u0195\7"+
-            "\43",
+            "\1\u0195",
+            "\1\u0196",
             "\1\u0197",
             "\1\u0198",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\22\43\1\u019a\7"+
-            "\43",
-            "\1\u019c",
+            "",
+            "\1\u0199",
+            "\1\u019a",
+            "\1\u019b",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
             "\1\u019d",
             "\1\u019e",
-            "\1\u019f",
+            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
             "\1\u01a0",
             "\1\u01a1",
             "\1\u01a2",
@@ -2865,6 +2773,7 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u01a7",
             "\1\u01a8",
             "\1\u01a9",
+            "",
             "\1\u01aa",
             "\1\u01ab",
             "\1\u01ac",
@@ -2874,15 +2783,14 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u01b0",
             "\1\u01b1",
             "\1\u01b2",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "",
+            "\1\u01b3",
             "\1\u01b4",
             "\1\u01b5",
-            "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u01b6",
             "",
             "\1\u01b7",
             "\1\u01b8",
+            "",
             "\1\u01b9",
             "\1\u01ba",
             "\1\u01bb",
@@ -2894,7 +2802,7 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u01c1",
             "\1\u01c2",
             "\1\u01c3",
-            "\1\u01c4",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u01c5",
             "\1\u01c6",
             "\1\u01c7",
@@ -2904,10 +2812,8 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u01cb",
             "\1\u01cc",
             "\1\u01cd",
-            "",
             "\1\u01ce",
             "\1\u01cf",
-            "",
             "\1\u01d0",
             "\1\u01d1",
             "\1\u01d2",
@@ -2916,23 +2822,24 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u01d5",
             "\1\u01d6",
             "\1\u01d7",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u01d8",
             "\1\u01d9",
             "\1\u01da",
             "\1\u01db",
             "\1\u01dc",
-            "\1\u01dd",
-            "\1\u01de",
+            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\22\42\1\u01dd\7"+
+            "\42",
             "\1\u01df",
-            "\1\u01e0",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u01e1",
             "\1\u01e2",
             "\1\u01e3",
             "\1\u01e4",
             "\1\u01e5",
             "\1\u01e6",
-            "\1\u01e7",
-            "\1\u01e8",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u01e9",
             "\1\u01ea",
             "\1\u01eb",
@@ -2941,99 +2848,99 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u01ee",
             "\1\u01ef",
             "\1\u01f0",
-            "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\22\43\1\u01f1\7"+
-            "\43",
+            "\1\u01f1",
+            "\1\u01f2",
             "\1\u01f3",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u01f4",
             "\1\u01f5",
-            "\1\u01f6",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
             "\1\u01f7",
+            "",
             "\1\u01f8",
             "\1\u01f9",
             "\1\u01fa",
             "\1\u01fb",
             "\1\u01fc",
             "\1\u01fd",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "",
+            "",
+            "\1\u01fe",
+            "\1\u01ff",
             "\1\u0200",
             "\1\u0201",
             "\1\u0202",
-            "\1\u0203",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0204",
             "\1\u0205",
-            "\1\u0206",
-            "\1\u0207",
-            "\1\u0208",
-            "\1\u0209",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\1\u020a",
             "",
             "\1\u020b",
-            "",
-            "\1\u020c",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u020d",
-            "\1\u020e",
-            "\1\u020f",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0210",
             "\1\u0211",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "",
-            "",
+            "\1\u0212",
+            "\1\u0213",
+            "\1\u0214",
             "\1\u0215",
-            "\1\u0216",
-            "\1\u0217",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0218",
+            "",
+            "",
+            "",
+            "",
             "\1\u0219",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
             "\1\u021b",
-            "\1\u021c",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u021e",
             "",
+            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\1\u021d",
+            "\1\u021e",
             "\1\u021f",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0220",
             "\1\u0221",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u0224",
-            "\1\u0225",
             "",
             "",
+            "\1\u0222",
+            "\1\u0223",
+            "",
+            "\1\u0224",
             "",
+            "\1\u0225",
             "\1\u0226",
             "\1\u0227",
             "\1\u0228",
             "\1\u0229",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u022a",
+            "\1\u022b",
             "\1\u022c",
-            "",
             "\1\u022d",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "",
+            "\1\u022e",
             "\1\u022f",
-            "",
-            "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\1\u0230",
             "\1\u0231",
             "\1\u0232",
             "\1\u0233",
-            "\1\u0234",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0235",
-            "",
-            "",
             "\1\u0236",
             "\1\u0237",
-            "",
             "\1\u0238",
-            "",
             "\1\u0239",
             "\1\u023a",
             "\1\u023b",
+            "",
             "\1\u023c",
             "\1\u023d",
             "\1\u023e",
@@ -3043,51 +2950,30 @@ public class InternalMyDslTestLexer extends Lexer {
             "\1\u0242",
             "\1\u0243",
             "\1\u0244",
-            "\1\u0245",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0246",
-            "\1\u0247",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\1\u0248",
             "\1\u0249",
             "\1\u024a",
             "\1\u024b",
+            "",
             "\1\u024c",
-            "\1\u024d",
+            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u024e",
             "\1\u024f",
-            "",
             "\1\u0250",
             "\1\u0251",
+            "",
             "\1\u0252",
-            "\1\u0253",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "\1\u0254",
             "\1\u0255",
-            "\1\u0256",
-            "\1\u0257",
-            "\1\u0258",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u025a",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u025c",
-            "\1\u025d",
-            "\1\u025e",
-            "\1\u025f",
-            "",
-            "\1\u0260",
-            "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u0262",
-            "\1\u0263",
-            "\1\u0264",
-            "\1\u0265",
-            "",
-            "\1\u0266",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\1\u0268",
-            "\1\u0269",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
-            "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
+            "\12\42\7\uffff\32\42\4\uffff\1\42\1\uffff\32\42",
             "",
             "",
             ""
@@ -3123,101 +3009,99 @@ public class InternalMyDslTestLexer extends Lexer {
             this.transition = DFA12_transition;
         }
         public String getDescription() {
-            return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | T__67 | T__68 | T__69 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
+            return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
         }
         public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
                     case 0 : 
-                        int LA12_30 = input.LA(1);
+                        int LA12_0 = input.LA(1);
 
                         s = -1;
-                        if ( ((LA12_30>='\u0000' && LA12_30<='\uFFFF')) ) {s = 67;}
-
-                        else s = 33;
+                        if ( (LA12_0=='R') ) {s = 1;}
 
-                        if ( s>=0 ) return s;
-                        break;
-                    case 1 : 
-                        int LA12_29 = input.LA(1);
+                        else if ( (LA12_0=='{') ) {s = 2;}
 
-                        s = -1;
-                        if ( ((LA12_29>='\u0000' && LA12_29<='\uFFFF')) ) {s = 67;}
+                        else if ( (LA12_0=='}') ) {s = 3;}
 
-                        else s = 33;
+                        else if ( (LA12_0=='I') ) {s = 4;}
 
-                        if ( s>=0 ) return s;
-                        break;
-                    case 2 : 
-                        int LA12_0 = input.LA(1);
+                        else if ( (LA12_0=='p') ) {s = 5;}
 
-                        s = -1;
-                        if ( (LA12_0=='R') ) {s = 1;}
+                        else if ( (LA12_0=='(') ) {s = 6;}
 
-                        else if ( (LA12_0=='{') ) {s = 2;}
+                        else if ( (LA12_0==',') ) {s = 7;}
 
-                        else if ( (LA12_0=='d') ) {s = 3;}
+                        else if ( (LA12_0==')') ) {s = 8;}
 
-                        else if ( (LA12_0==',') ) {s = 4;}
+                        else if ( (LA12_0=='s') ) {s = 9;}
 
-                        else if ( (LA12_0=='}') ) {s = 5;}
+                        else if ( (LA12_0=='r') ) {s = 10;}
 
-                        else if ( (LA12_0=='i') ) {s = 6;}
+                        else if ( (LA12_0=='C') ) {s = 11;}
 
-                        else if ( (LA12_0=='c') ) {s = 7;}
+                        else if ( (LA12_0=='i') ) {s = 12;}
 
-                        else if ( (LA12_0=='I') ) {s = 8;}
+                        else if ( (LA12_0=='P') ) {s = 13;}
 
-                        else if ( (LA12_0=='p') ) {s = 9;}
+                        else if ( (LA12_0=='t') ) {s = 14;}
 
-                        else if ( (LA12_0=='(') ) {s = 10;}
+                        else if ( (LA12_0=='d') ) {s = 15;}
 
-                        else if ( (LA12_0==')') ) {s = 11;}
+                        else if ( (LA12_0=='v') ) {s = 16;}
 
-                        else if ( (LA12_0=='s') ) {s = 12;}
+                        else if ( (LA12_0=='B') ) {s = 17;}
 
-                        else if ( (LA12_0=='r') ) {s = 13;}
+                        else if ( (LA12_0=='a') ) {s = 18;}
 
-                        else if ( (LA12_0=='C') ) {s = 14;}
+                        else if ( (LA12_0=='S') ) {s = 19;}
 
-                        else if ( (LA12_0=='P') ) {s = 15;}
+                        else if ( (LA12_0=='A') ) {s = 20;}
 
-                        else if ( (LA12_0=='t') ) {s = 16;}
+                        else if ( (LA12_0=='e') ) {s = 21;}
 
-                        else if ( (LA12_0=='v') ) {s = 17;}
+                        else if ( (LA12_0=='o') ) {s = 22;}
 
-                        else if ( (LA12_0=='B') ) {s = 18;}
+                        else if ( (LA12_0=='D') ) {s = 23;}
 
-                        else if ( (LA12_0=='a') ) {s = 19;}
+                        else if ( (LA12_0=='L') ) {s = 24;}
 
-                        else if ( (LA12_0=='S') ) {s = 20;}
+                        else if ( (LA12_0=='^') ) {s = 25;}
 
-                        else if ( (LA12_0=='A') ) {s = 21;}
+                        else if ( ((LA12_0>='E' && LA12_0<='H')||(LA12_0>='J' && LA12_0<='K')||(LA12_0>='M' && LA12_0<='O')||LA12_0=='Q'||(LA12_0>='T' && LA12_0<='Z')||LA12_0=='_'||(LA12_0>='b' && LA12_0<='c')||(LA12_0>='f' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='n')||LA12_0=='q'||LA12_0=='u'||(LA12_0>='w' && LA12_0<='z')) ) {s = 26;}
 
-                        else if ( (LA12_0=='e') ) {s = 22;}
+                        else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 27;}
 
-                        else if ( (LA12_0=='o') ) {s = 23;}
+                        else if ( (LA12_0=='\"') ) {s = 28;}
 
-                        else if ( (LA12_0=='D') ) {s = 24;}
+                        else if ( (LA12_0=='\'') ) {s = 29;}
 
-                        else if ( (LA12_0=='L') ) {s = 25;}
+                        else if ( (LA12_0=='/') ) {s = 30;}
 
-                        else if ( (LA12_0=='^') ) {s = 26;}
+                        else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 31;}
 
-                        else if ( ((LA12_0>='E' && LA12_0<='H')||(LA12_0>='J' && LA12_0<='K')||(LA12_0>='M' && LA12_0<='O')||LA12_0=='Q'||(LA12_0>='T' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||(LA12_0>='f' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='n')||LA12_0=='q'||LA12_0=='u'||(LA12_0>='w' && LA12_0<='z')) ) {s = 27;}
+                        else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='*' && LA12_0<='+')||(LA12_0>='-' && LA12_0<='.')||(LA12_0>=':' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 32;}
 
-                        else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 28;}
+                        if ( s>=0 ) return s;
+                        break;
+                    case 1 : 
+                        int LA12_28 = input.LA(1);
 
-                        else if ( (LA12_0=='\"') ) {s = 29;}
+                        s = -1;
+                        if ( ((LA12_28>='\u0000' && LA12_28<='\uFFFF')) ) {s = 65;}
 
-                        else if ( (LA12_0=='\'') ) {s = 30;}
+                        else s = 32;
 
-                        else if ( (LA12_0=='/') ) {s = 31;}
+                        if ( s>=0 ) return s;
+                        break;
+                    case 2 : 
+                        int LA12_29 = input.LA(1);
 
-                        else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 32;}
+                        s = -1;
+                        if ( ((LA12_29>='\u0000' && LA12_29<='\uFFFF')) ) {s = 65;}
 
-                        else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||LA12_0=='!'||(LA12_0>='#' && LA12_0<='&')||(LA12_0>='*' && LA12_0<='+')||(LA12_0>='-' && LA12_0<='.')||(LA12_0>=':' && LA12_0<='@')||(LA12_0>='[' && LA12_0<=']')||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 33;}
+                        else s = 32;
 
                         if ( s>=0 ) return s;
                         break;
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestParser.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestParser.java
index f55f405244b2de7f5697ddbddd008a896a164fb0..0c2c115c6b8466b8733b21b5f2bdd8815ad4e983 100644
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestParser.java
+++ b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTestParser.java
@@ -22,13 +22,10 @@ import java.util.ArrayList;
 @SuppressWarnings("all")
 public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
     public static final String[] tokenNames = new String[] {
-        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'Repository'", "'{'", "'datatypes'", "','", "'}'", "'interfaces'", "'components'", "'Interface'", "'parentInterfaces'", "'('", "')'", "'signatures'", "'RepositoryComponent'", "'relationship'", "'providedRoles'", "'requiredRoles'", "'CollectionDataType'", "'innerType'", "'CompositeDataType'", "'parentTypes'", "'innerDeclarations'", "'PrimitiveDataType'", "'type'", "'ref'", "'InnerDeclaration'", "'dataType'", "'void'", "'provides'", "'requires'", "'BasicComponent'", "'CompositeComponent'", "'assembly'", "'SubSystem'", "'ComposedStructureAssembly'", "'assemblyContexts'", "'assemblyConnectors'", "'providedDelegationConnectors'", "'requiredDelegationConnectors'", "'AssemblyContext'", "'encapsulatedComponent'", "'AssemblyConnector'", "'requiredRole'", "'providedRole'", "'providingAssemblyContext'", "'requiringAssemblyContext'", "'ProvidedDelegationConnector'", "'assemblyContext'", "'innerProvidedRole'", "'outerProvidedRole'", "'RequiredDelegationConnector'", "'innerRequiredRole'", "'outerRequiredRole'", "'INT'", "'STRING'", "'BOOL'", "'DOUBLE'", "'CHAR'", "'BYTE'", "'LONG'"
+        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'Repository'", "'{'", "'}'", "'Interface'", "'parentInterfaces'", "'('", "','", "')'", "'signatures'", "'RepositoryComponent'", "'relationship'", "'providedRoles'", "'requiredRoles'", "'CollectionDataType'", "'innerType'", "'CompositeDataType'", "'parentTypes'", "'innerDeclarations'", "'PrimitiveDataType'", "'type'", "'ref'", "'InnerDeclaration'", "'dataType'", "'void'", "'ProvidedRole'", "'RequiredRole'", "'BasicComponent'", "'CompositeComponent'", "'assembly'", "'SubSystem'", "'ComposedStructureAssembly'", "'assemblyContexts'", "'assemblyConnectors'", "'providedDelegationConnectors'", "'requiredDelegationConnectors'", "'AssemblyContext'", "'encapsulatedComponent'", "'AssemblyConnector'", "'requiredRole'", "'providedRole'", "'providingAssemblyContext'", "'requiringAssemblyContext'", "'ProvidedDelegationConnector'", "'assemblyContext'", "'innerProvidedRole'", "'outerProvidedRole'", "'RequiredDelegationConnector'", "'innerRequiredRole'", "'outerRequiredRole'", "'INT'", "'STRING'", "'BOOL'", "'DOUBLE'", "'CHAR'", "'BYTE'", "'LONG'"
     };
-    public static final int T__68=68;
-    public static final int T__69=69;
     public static final int RULE_ID=5;
     public static final int T__66=66;
-    public static final int T__67=67;
     public static final int T__64=64;
     public static final int T__29=29;
     public static final int T__65=65;
@@ -167,48 +164,30 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleRepository"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:77:1: ruleRepository returns [EObject current=null] : (otherlv_0= 'Repository' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'datatypes' otherlv_4= '{' ( (lv_datatypes_5_0= ruleDataType ) ) (otherlv_6= ',' ( (lv_datatypes_7_0= ruleDataType ) ) )* otherlv_8= '}' )? (otherlv_9= 'interfaces' otherlv_10= '{' ( (lv_interfaces_11_0= ruleInterface ) ) (otherlv_12= ',' ( (lv_interfaces_13_0= ruleInterface ) ) )* otherlv_14= '}' )? (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ',' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )? otherlv_21= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:77:1: ruleRepository returns [EObject current=null] : (otherlv_0= 'Repository' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' ( ( (lv_datatypes_3_0= ruleDataType ) ) | ( (lv_interfaces_4_0= ruleInterface ) ) | ( (lv_components_5_0= ruleRepositoryComponent ) ) )* otherlv_6= '}' ) ;
     public final EObject ruleRepository() throws RecognitionException {
         EObject current = null;
 
         Token otherlv_0=null;
         Token otherlv_2=null;
-        Token otherlv_3=null;
-        Token otherlv_4=null;
         Token otherlv_6=null;
-        Token otherlv_8=null;
-        Token otherlv_9=null;
-        Token otherlv_10=null;
-        Token otherlv_12=null;
-        Token otherlv_14=null;
-        Token otherlv_15=null;
-        Token otherlv_16=null;
-        Token otherlv_18=null;
-        Token otherlv_20=null;
-        Token otherlv_21=null;
         AntlrDatatypeRuleToken lv_name_1_0 = null;
 
-        EObject lv_datatypes_5_0 = null;
-
-        EObject lv_datatypes_7_0 = null;
-
-        EObject lv_interfaces_11_0 = null;
+        EObject lv_datatypes_3_0 = null;
 
-        EObject lv_interfaces_13_0 = null;
+        EObject lv_interfaces_4_0 = null;
 
-        EObject lv_components_17_0 = null;
-
-        EObject lv_components_19_0 = null;
+        EObject lv_components_5_0 = null;
 
 
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:80:28: ( (otherlv_0= 'Repository' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'datatypes' otherlv_4= '{' ( (lv_datatypes_5_0= ruleDataType ) ) (otherlv_6= ',' ( (lv_datatypes_7_0= ruleDataType ) ) )* otherlv_8= '}' )? (otherlv_9= 'interfaces' otherlv_10= '{' ( (lv_interfaces_11_0= ruleInterface ) ) (otherlv_12= ',' ( (lv_interfaces_13_0= ruleInterface ) ) )* otherlv_14= '}' )? (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ',' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )? otherlv_21= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:81:1: (otherlv_0= 'Repository' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'datatypes' otherlv_4= '{' ( (lv_datatypes_5_0= ruleDataType ) ) (otherlv_6= ',' ( (lv_datatypes_7_0= ruleDataType ) ) )* otherlv_8= '}' )? (otherlv_9= 'interfaces' otherlv_10= '{' ( (lv_interfaces_11_0= ruleInterface ) ) (otherlv_12= ',' ( (lv_interfaces_13_0= ruleInterface ) ) )* otherlv_14= '}' )? (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ',' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )? otherlv_21= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:80:28: ( (otherlv_0= 'Repository' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' ( ( (lv_datatypes_3_0= ruleDataType ) ) | ( (lv_interfaces_4_0= ruleInterface ) ) | ( (lv_components_5_0= ruleRepositoryComponent ) ) )* otherlv_6= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:81:1: (otherlv_0= 'Repository' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' ( ( (lv_datatypes_3_0= ruleDataType ) ) | ( (lv_interfaces_4_0= ruleInterface ) ) | ( (lv_components_5_0= ruleRepositoryComponent ) ) )* otherlv_6= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:81:1: (otherlv_0= 'Repository' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'datatypes' otherlv_4= '{' ( (lv_datatypes_5_0= ruleDataType ) ) (otherlv_6= ',' ( (lv_datatypes_7_0= ruleDataType ) ) )* otherlv_8= '}' )? (otherlv_9= 'interfaces' otherlv_10= '{' ( (lv_interfaces_11_0= ruleInterface ) ) (otherlv_12= ',' ( (lv_interfaces_13_0= ruleInterface ) ) )* otherlv_14= '}' )? (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ',' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )? otherlv_21= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:81:3: otherlv_0= 'Repository' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'datatypes' otherlv_4= '{' ( (lv_datatypes_5_0= ruleDataType ) ) (otherlv_6= ',' ( (lv_datatypes_7_0= ruleDataType ) ) )* otherlv_8= '}' )? (otherlv_9= 'interfaces' otherlv_10= '{' ( (lv_interfaces_11_0= ruleInterface ) ) (otherlv_12= ',' ( (lv_interfaces_13_0= ruleInterface ) ) )* otherlv_14= '}' )? (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ',' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )? otherlv_21= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:81:1: (otherlv_0= 'Repository' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' ( ( (lv_datatypes_3_0= ruleDataType ) ) | ( (lv_interfaces_4_0= ruleInterface ) ) | ( (lv_components_5_0= ruleRepositoryComponent ) ) )* otherlv_6= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:81:3: otherlv_0= 'Repository' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' ( ( (lv_datatypes_3_0= ruleDataType ) ) | ( (lv_interfaces_4_0= ruleInterface ) ) | ( (lv_components_5_0= ruleRepositoryComponent ) ) )* otherlv_6= '}'
             {
             otherlv_0=(Token)match(input,11,FollowSets000.FOLLOW_11_in_ruleRepository122); 
 
@@ -249,366 +228,155 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                 	newLeafNode(otherlv_2, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_2());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:107:1: (otherlv_3= 'datatypes' otherlv_4= '{' ( (lv_datatypes_5_0= ruleDataType ) ) (otherlv_6= ',' ( (lv_datatypes_7_0= ruleDataType ) ) )* otherlv_8= '}' )?
-            int alt2=2;
-            int LA2_0 = input.LA(1);
-
-            if ( (LA2_0==13) ) {
-                alt2=1;
-            }
-            switch (alt2) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:107:3: otherlv_3= 'datatypes' otherlv_4= '{' ( (lv_datatypes_5_0= ruleDataType ) ) (otherlv_6= ',' ( (lv_datatypes_7_0= ruleDataType ) ) )* otherlv_8= '}'
-                    {
-                    otherlv_3=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleRepository168); 
-
-                        	newLeafNode(otherlv_3, grammarAccess.getRepositoryAccess().getDatatypesKeyword_3_0());
-                        
-                    otherlv_4=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepository180); 
-
-                        	newLeafNode(otherlv_4, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_3_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:115:1: ( (lv_datatypes_5_0= ruleDataType ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:116:1: (lv_datatypes_5_0= ruleDataType )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:116:1: (lv_datatypes_5_0= ruleDataType )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:117:3: lv_datatypes_5_0= ruleDataType
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:107:1: ( ( (lv_datatypes_3_0= ruleDataType ) ) | ( (lv_interfaces_4_0= ruleInterface ) ) | ( (lv_components_5_0= ruleRepositoryComponent ) ) )*
+            loop1:
+            do {
+                int alt1=4;
+                switch ( input.LA(1) ) {
+                case 24:
+                case 26:
+                case 29:
                     {
-                     
-                    	        newCompositeNode(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleDataType_in_ruleRepository201);
-                    lv_datatypes_5_0=ruleDataType();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"datatypes",
-                            		lv_datatypes_5_0, 
-                            		"DataType");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
-                    }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:133:2: (otherlv_6= ',' ( (lv_datatypes_7_0= ruleDataType ) ) )*
-                    loop1:
-                    do {
-                        int alt1=2;
-                        int LA1_0 = input.LA(1);
-
-                        if ( (LA1_0==14) ) {
-                            alt1=1;
-                        }
-
-
-                        switch (alt1) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:133:4: otherlv_6= ',' ( (lv_datatypes_7_0= ruleDataType ) )
-                    	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepository214); 
-
-                    	        	newLeafNode(otherlv_6, grammarAccess.getRepositoryAccess().getCommaKeyword_3_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:137:1: ( (lv_datatypes_7_0= ruleDataType ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:138:1: (lv_datatypes_7_0= ruleDataType )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:138:1: (lv_datatypes_7_0= ruleDataType )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:139:3: lv_datatypes_7_0= ruleDataType
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleDataType_in_ruleRepository235);
-                    	    lv_datatypes_7_0=ruleDataType();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"datatypes",
-                    	            		lv_datatypes_7_0, 
-                    	            		"DataType");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop1;
-                        }
-                    } while (true);
-
-                    otherlv_8=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepository249); 
-
-                        	newLeafNode(otherlv_8, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_3_4());
-                        
-
+                    alt1=1;
                     }
                     break;
-
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:159:3: (otherlv_9= 'interfaces' otherlv_10= '{' ( (lv_interfaces_11_0= ruleInterface ) ) (otherlv_12= ',' ( (lv_interfaces_13_0= ruleInterface ) ) )* otherlv_14= '}' )?
-            int alt4=2;
-            int LA4_0 = input.LA(1);
-
-            if ( (LA4_0==16) ) {
-                alt4=1;
-            }
-            switch (alt4) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:159:5: otherlv_9= 'interfaces' otherlv_10= '{' ( (lv_interfaces_11_0= ruleInterface ) ) (otherlv_12= ',' ( (lv_interfaces_13_0= ruleInterface ) ) )* otherlv_14= '}'
-                    {
-                    otherlv_9=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleRepository264); 
-
-                        	newLeafNode(otherlv_9, grammarAccess.getRepositoryAccess().getInterfacesKeyword_4_0());
-                        
-                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepository276); 
-
-                        	newLeafNode(otherlv_10, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_4_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:167:1: ( (lv_interfaces_11_0= ruleInterface ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:168:1: (lv_interfaces_11_0= ruleInterface )
+                case 14:
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:168:1: (lv_interfaces_11_0= ruleInterface )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:169:3: lv_interfaces_11_0= ruleInterface
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleInterface_in_ruleRepository297);
-                    lv_interfaces_11_0=ruleInterface();
-
-                    state._fsp--;
-
-
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"interfaces",
-                            		lv_interfaces_11_0, 
-                            		"Interface");
-                    	        afterParserOrEnumRuleCall();
-                    	    
-
-                    }
-
-
+                    alt1=2;
                     }
-
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:185:2: (otherlv_12= ',' ( (lv_interfaces_13_0= ruleInterface ) ) )*
-                    loop3:
-                    do {
-                        int alt3=2;
-                        int LA3_0 = input.LA(1);
-
-                        if ( (LA3_0==14) ) {
-                            alt3=1;
-                        }
-
-
-                        switch (alt3) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:185:4: otherlv_12= ',' ( (lv_interfaces_13_0= ruleInterface ) )
-                    	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepository310); 
-
-                    	        	newLeafNode(otherlv_12, grammarAccess.getRepositoryAccess().getCommaKeyword_4_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:189:1: ( (lv_interfaces_13_0= ruleInterface ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:190:1: (lv_interfaces_13_0= ruleInterface )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:190:1: (lv_interfaces_13_0= ruleInterface )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:191:3: lv_interfaces_13_0= ruleInterface
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_4_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleInterface_in_ruleRepository331);
-                    	    lv_interfaces_13_0=ruleInterface();
-
-                    	    state._fsp--;
-
-
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"interfaces",
-                    	            		lv_interfaces_13_0, 
-                    	            		"Interface");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
-
-                    	    }
-
-
-                    	    }
-
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop3;
-                        }
-                    } while (true);
-
-                    otherlv_14=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepository345); 
-
-                        	newLeafNode(otherlv_14, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4_4());
-                        
-
+                    break;
+                case 20:
+                case 37:
+                case 38:
+                case 40:
+                    {
+                    alt1=3;
                     }
                     break;
 
-            }
-
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:211:3: (otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ',' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}' )?
-            int alt6=2;
-            int LA6_0 = input.LA(1);
-
-            if ( (LA6_0==17) ) {
-                alt6=1;
-            }
-            switch (alt6) {
-                case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:211:5: otherlv_15= 'components' otherlv_16= '{' ( (lv_components_17_0= ruleRepositoryComponent ) ) (otherlv_18= ',' ( (lv_components_19_0= ruleRepositoryComponent ) ) )* otherlv_20= '}'
-                    {
-                    otherlv_15=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleRepository360); 
+                }
 
-                        	newLeafNode(otherlv_15, grammarAccess.getRepositoryAccess().getComponentsKeyword_5_0());
-                        
-                    otherlv_16=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepository372); 
+                switch (alt1) {
+            	case 1 :
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:107:2: ( (lv_datatypes_3_0= ruleDataType ) )
+            	    {
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:107:2: ( (lv_datatypes_3_0= ruleDataType ) )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:108:1: (lv_datatypes_3_0= ruleDataType )
+            	    {
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:108:1: (lv_datatypes_3_0= ruleDataType )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:109:3: lv_datatypes_3_0= ruleDataType
+            	    {
+            	     
+            	    	        newCompositeNode(grammarAccess.getRepositoryAccess().getDatatypesDataTypeParserRuleCall_3_0_0()); 
+            	    	    
+            	    pushFollow(FollowSets000.FOLLOW_ruleDataType_in_ruleRepository177);
+            	    lv_datatypes_3_0=ruleDataType();
 
-                        	newLeafNode(otherlv_16, grammarAccess.getRepositoryAccess().getLeftCurlyBracketKeyword_5_1());
-                        
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:219:1: ( (lv_components_17_0= ruleRepositoryComponent ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:220:1: (lv_components_17_0= ruleRepositoryComponent )
-                    {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:220:1: (lv_components_17_0= ruleRepositoryComponent )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:221:3: lv_components_17_0= ruleRepositoryComponent
-                    {
-                     
-                    	        newCompositeNode(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_2_0()); 
-                    	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_ruleRepository393);
-                    lv_components_17_0=ruleRepositoryComponent();
+            	    state._fsp--;
 
-                    state._fsp--;
 
+            	    	        if (current==null) {
+            	    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
+            	    	        }
+            	           		add(
+            	           			current, 
+            	           			"datatypes",
+            	            		lv_datatypes_3_0, 
+            	            		"DataType");
+            	    	        afterParserOrEnumRuleCall();
+            	    	    
 
-                    	        if (current==null) {
-                    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	        }
-                           		add(
-                           			current, 
-                           			"components",
-                            		lv_components_17_0, 
-                            		"RepositoryComponent");
-                    	        afterParserOrEnumRuleCall();
-                    	    
+            	    }
 
-                    }
 
+            	    }
 
-                    }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:237:2: (otherlv_18= ',' ( (lv_components_19_0= ruleRepositoryComponent ) ) )*
-                    loop5:
-                    do {
-                        int alt5=2;
-                        int LA5_0 = input.LA(1);
+            	    }
+            	    break;
+            	case 2 :
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:126:6: ( (lv_interfaces_4_0= ruleInterface ) )
+            	    {
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:126:6: ( (lv_interfaces_4_0= ruleInterface ) )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:127:1: (lv_interfaces_4_0= ruleInterface )
+            	    {
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:127:1: (lv_interfaces_4_0= ruleInterface )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:128:3: lv_interfaces_4_0= ruleInterface
+            	    {
+            	     
+            	    	        newCompositeNode(grammarAccess.getRepositoryAccess().getInterfacesInterfaceParserRuleCall_3_1_0()); 
+            	    	    
+            	    pushFollow(FollowSets000.FOLLOW_ruleInterface_in_ruleRepository204);
+            	    lv_interfaces_4_0=ruleInterface();
 
-                        if ( (LA5_0==14) ) {
-                            alt5=1;
-                        }
+            	    state._fsp--;
 
 
-                        switch (alt5) {
-                    	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:237:4: otherlv_18= ',' ( (lv_components_19_0= ruleRepositoryComponent ) )
-                    	    {
-                    	    otherlv_18=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepository406); 
+            	    	        if (current==null) {
+            	    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
+            	    	        }
+            	           		add(
+            	           			current, 
+            	           			"interfaces",
+            	            		lv_interfaces_4_0, 
+            	            		"Interface");
+            	    	        afterParserOrEnumRuleCall();
+            	    	    
 
-                    	        	newLeafNode(otherlv_18, grammarAccess.getRepositoryAccess().getCommaKeyword_5_3_0());
-                    	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:241:1: ( (lv_components_19_0= ruleRepositoryComponent ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:242:1: (lv_components_19_0= ruleRepositoryComponent )
-                    	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:242:1: (lv_components_19_0= ruleRepositoryComponent )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:243:3: lv_components_19_0= ruleRepositoryComponent
-                    	    {
-                    	     
-                    	    	        newCompositeNode(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_5_3_1_0()); 
-                    	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_ruleRepository427);
-                    	    lv_components_19_0=ruleRepositoryComponent();
+            	    }
 
-                    	    state._fsp--;
 
+            	    }
 
-                    	    	        if (current==null) {
-                    	    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
-                    	    	        }
-                    	           		add(
-                    	           			current, 
-                    	           			"components",
-                    	            		lv_components_19_0, 
-                    	            		"RepositoryComponent");
-                    	    	        afterParserOrEnumRuleCall();
-                    	    	    
 
-                    	    }
+            	    }
+            	    break;
+            	case 3 :
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:145:6: ( (lv_components_5_0= ruleRepositoryComponent ) )
+            	    {
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:145:6: ( (lv_components_5_0= ruleRepositoryComponent ) )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:146:1: (lv_components_5_0= ruleRepositoryComponent )
+            	    {
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:146:1: (lv_components_5_0= ruleRepositoryComponent )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:147:3: lv_components_5_0= ruleRepositoryComponent
+            	    {
+            	     
+            	    	        newCompositeNode(grammarAccess.getRepositoryAccess().getComponentsRepositoryComponentParserRuleCall_3_2_0()); 
+            	    	    
+            	    pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_ruleRepository231);
+            	    lv_components_5_0=ruleRepositoryComponent();
 
+            	    state._fsp--;
 
-                    	    }
 
+            	    	        if (current==null) {
+            	    	            current = createModelElementForParent(grammarAccess.getRepositoryRule());
+            	    	        }
+            	           		add(
+            	           			current, 
+            	           			"components",
+            	            		lv_components_5_0, 
+            	            		"RepositoryComponent");
+            	    	        afterParserOrEnumRuleCall();
+            	    	    
 
-                    	    }
-                    	    break;
+            	    }
 
-                    	default :
-                    	    break loop5;
-                        }
-                    } while (true);
 
-                    otherlv_20=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepository441); 
+            	    }
 
-                        	newLeafNode(otherlv_20, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_5_4());
-                        
 
-                    }
-                    break;
+            	    }
+            	    break;
 
-            }
+            	default :
+            	    break loop1;
+                }
+            } while (true);
 
-            otherlv_21=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepository455); 
+            otherlv_6=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleRepository245); 
 
-                	newLeafNode(otherlv_21, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_6());
+                	newLeafNode(otherlv_6, grammarAccess.getRepositoryAccess().getRightCurlyBracketKeyword_4());
                 
 
             }
@@ -631,7 +399,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:275:1: entryRuleDataType returns [EObject current=null] : iv_ruleDataType= ruleDataType EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:175:1: entryRuleDataType returns [EObject current=null] : iv_ruleDataType= ruleDataType EOF ;
     public final EObject entryRuleDataType() throws RecognitionException {
         EObject current = null;
 
@@ -639,17 +407,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:276:2: (iv_ruleDataType= ruleDataType EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:277:2: iv_ruleDataType= ruleDataType EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:176:2: (iv_ruleDataType= ruleDataType EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:177:2: iv_ruleDataType= ruleDataType EOF
             {
              newCompositeNode(grammarAccess.getDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleDataType_in_entryRuleDataType491);
+            pushFollow(FollowSets000.FOLLOW_ruleDataType_in_entryRuleDataType281);
             iv_ruleDataType=ruleDataType();
 
             state._fsp--;
 
              current =iv_ruleDataType; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleDataType501); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleDataType291); 
 
             }
 
@@ -667,7 +435,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:284:1: ruleDataType returns [EObject current=null] : (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:184:1: ruleDataType returns [EObject current=null] : (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType ) ;
     public final EObject ruleDataType() throws RecognitionException {
         EObject current = null;
 
@@ -681,42 +449,42 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:287:28: ( (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:288:1: (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:187:28: ( (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:188:1: (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:288:1: (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType )
-            int alt7=3;
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:188:1: (this_CollectionDataType_0= ruleCollectionDataType | this_CompositeDataType_1= ruleCompositeDataType | this_PrimitiveDataType_2= rulePrimitiveDataType )
+            int alt2=3;
             switch ( input.LA(1) ) {
-            case 27:
+            case 24:
                 {
-                alt7=1;
+                alt2=1;
                 }
                 break;
-            case 29:
+            case 26:
                 {
-                alt7=2;
+                alt2=2;
                 }
                 break;
-            case 32:
+            case 29:
                 {
-                alt7=3;
+                alt2=3;
                 }
                 break;
             default:
                 NoViableAltException nvae =
-                    new NoViableAltException("", 7, 0, input);
+                    new NoViableAltException("", 2, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt7) {
+            switch (alt2) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:289:5: this_CollectionDataType_0= ruleCollectionDataType
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:189:5: this_CollectionDataType_0= ruleCollectionDataType
                     {
                      
                             newCompositeNode(grammarAccess.getDataTypeAccess().getCollectionDataTypeParserRuleCall_0()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleCollectionDataType_in_ruleDataType548);
+                    pushFollow(FollowSets000.FOLLOW_ruleCollectionDataType_in_ruleDataType338);
                     this_CollectionDataType_0=ruleCollectionDataType();
 
                     state._fsp--;
@@ -729,12 +497,12 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:299:5: this_CompositeDataType_1= ruleCompositeDataType
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:199:5: this_CompositeDataType_1= ruleCompositeDataType
                     {
                      
                             newCompositeNode(grammarAccess.getDataTypeAccess().getCompositeDataTypeParserRuleCall_1()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleCompositeDataType_in_ruleDataType575);
+                    pushFollow(FollowSets000.FOLLOW_ruleCompositeDataType_in_ruleDataType365);
                     this_CompositeDataType_1=ruleCompositeDataType();
 
                     state._fsp--;
@@ -747,12 +515,12 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 3 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:309:5: this_PrimitiveDataType_2= rulePrimitiveDataType
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:209:5: this_PrimitiveDataType_2= rulePrimitiveDataType
                     {
                      
                             newCompositeNode(grammarAccess.getDataTypeAccess().getPrimitiveDataTypeParserRuleCall_2()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_rulePrimitiveDataType_in_ruleDataType602);
+                    pushFollow(FollowSets000.FOLLOW_rulePrimitiveDataType_in_ruleDataType392);
                     this_PrimitiveDataType_2=rulePrimitiveDataType();
 
                     state._fsp--;
@@ -785,7 +553,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleRepositoryComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:325:1: entryRuleRepositoryComponent returns [EObject current=null] : iv_ruleRepositoryComponent= ruleRepositoryComponent EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:225:1: entryRuleRepositoryComponent returns [EObject current=null] : iv_ruleRepositoryComponent= ruleRepositoryComponent EOF ;
     public final EObject entryRuleRepositoryComponent() throws RecognitionException {
         EObject current = null;
 
@@ -793,17 +561,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:326:2: (iv_ruleRepositoryComponent= ruleRepositoryComponent EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:327:2: iv_ruleRepositoryComponent= ruleRepositoryComponent EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:226:2: (iv_ruleRepositoryComponent= ruleRepositoryComponent EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:227:2: iv_ruleRepositoryComponent= ruleRepositoryComponent EOF
             {
              newCompositeNode(grammarAccess.getRepositoryComponentRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_entryRuleRepositoryComponent637);
+            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_in_entryRuleRepositoryComponent427);
             iv_ruleRepositoryComponent=ruleRepositoryComponent();
 
             state._fsp--;
 
              current =iv_ruleRepositoryComponent; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRepositoryComponent647); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRepositoryComponent437); 
 
             }
 
@@ -821,7 +589,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleRepositoryComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:334:1: ruleRepositoryComponent returns [EObject current=null] : (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:234:1: ruleRepositoryComponent returns [EObject current=null] : (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem ) ;
     public final EObject ruleRepositoryComponent() throws RecognitionException {
         EObject current = null;
 
@@ -837,47 +605,47 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:337:28: ( (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:338:1: (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:237:28: ( (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:238:1: (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:338:1: (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem )
-            int alt8=4;
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:238:1: (this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl | this_BasicComponent_1= ruleBasicComponent | this_CompositeComponent_2= ruleCompositeComponent | this_SubSystem_3= ruleSubSystem )
+            int alt3=4;
             switch ( input.LA(1) ) {
-            case 23:
+            case 20:
                 {
-                alt8=1;
+                alt3=1;
                 }
                 break;
-            case 40:
+            case 37:
                 {
-                alt8=2;
+                alt3=2;
                 }
                 break;
-            case 41:
+            case 38:
                 {
-                alt8=3;
+                alt3=3;
                 }
                 break;
-            case 43:
+            case 40:
                 {
-                alt8=4;
+                alt3=4;
                 }
                 break;
             default:
                 NoViableAltException nvae =
-                    new NoViableAltException("", 8, 0, input);
+                    new NoViableAltException("", 3, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt8) {
+            switch (alt3) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:339:5: this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:239:5: this_RepositoryComponent_Impl_0= ruleRepositoryComponent_Impl
                     {
                      
                             newCompositeNode(grammarAccess.getRepositoryComponentAccess().getRepositoryComponent_ImplParserRuleCall_0()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_Impl_in_ruleRepositoryComponent694);
+                    pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_Impl_in_ruleRepositoryComponent484);
                     this_RepositoryComponent_Impl_0=ruleRepositoryComponent_Impl();
 
                     state._fsp--;
@@ -890,12 +658,12 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:349:5: this_BasicComponent_1= ruleBasicComponent
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:249:5: this_BasicComponent_1= ruleBasicComponent
                     {
                      
                             newCompositeNode(grammarAccess.getRepositoryComponentAccess().getBasicComponentParserRuleCall_1()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleBasicComponent_in_ruleRepositoryComponent721);
+                    pushFollow(FollowSets000.FOLLOW_ruleBasicComponent_in_ruleRepositoryComponent511);
                     this_BasicComponent_1=ruleBasicComponent();
 
                     state._fsp--;
@@ -908,12 +676,12 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 3 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:359:5: this_CompositeComponent_2= ruleCompositeComponent
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:259:5: this_CompositeComponent_2= ruleCompositeComponent
                     {
                      
                             newCompositeNode(grammarAccess.getRepositoryComponentAccess().getCompositeComponentParserRuleCall_2()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleCompositeComponent_in_ruleRepositoryComponent748);
+                    pushFollow(FollowSets000.FOLLOW_ruleCompositeComponent_in_ruleRepositoryComponent538);
                     this_CompositeComponent_2=ruleCompositeComponent();
 
                     state._fsp--;
@@ -926,12 +694,12 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 4 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:369:5: this_SubSystem_3= ruleSubSystem
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:269:5: this_SubSystem_3= ruleSubSystem
                     {
                      
                             newCompositeNode(grammarAccess.getRepositoryComponentAccess().getSubSystemParserRuleCall_3()); 
                         
-                    pushFollow(FollowSets000.FOLLOW_ruleSubSystem_in_ruleRepositoryComponent775);
+                    pushFollow(FollowSets000.FOLLOW_ruleSubSystem_in_ruleRepositoryComponent565);
                     this_SubSystem_3=ruleSubSystem();
 
                     state._fsp--;
@@ -964,7 +732,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleEString"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:385:1: entryRuleEString returns [String current=null] : iv_ruleEString= ruleEString EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:285:1: entryRuleEString returns [String current=null] : iv_ruleEString= ruleEString EOF ;
     public final String entryRuleEString() throws RecognitionException {
         String current = null;
 
@@ -972,17 +740,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:386:2: (iv_ruleEString= ruleEString EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:387:2: iv_ruleEString= ruleEString EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:286:2: (iv_ruleEString= ruleEString EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:287:2: iv_ruleEString= ruleEString EOF
             {
              newCompositeNode(grammarAccess.getEStringRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_entryRuleEString811);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_entryRuleEString601);
             iv_ruleEString=ruleEString();
 
             state._fsp--;
 
              current =iv_ruleEString.getText(); 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEString822); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleEString612); 
 
             }
 
@@ -1000,7 +768,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleEString"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:394:1: ruleEString returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:294:1: ruleEString returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID ) ;
     public final AntlrDatatypeRuleToken ruleEString() throws RecognitionException {
         AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
 
@@ -1010,30 +778,30 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:397:28: ( (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:398:1: (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:297:28: ( (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:298:1: (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:398:1: (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID )
-            int alt9=2;
-            int LA9_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:298:1: (this_STRING_0= RULE_STRING | this_ID_1= RULE_ID )
+            int alt4=2;
+            int LA4_0 = input.LA(1);
 
-            if ( (LA9_0==RULE_STRING) ) {
-                alt9=1;
+            if ( (LA4_0==RULE_STRING) ) {
+                alt4=1;
             }
-            else if ( (LA9_0==RULE_ID) ) {
-                alt9=2;
+            else if ( (LA4_0==RULE_ID) ) {
+                alt4=2;
             }
             else {
                 NoViableAltException nvae =
-                    new NoViableAltException("", 9, 0, input);
+                    new NoViableAltException("", 4, 0, input);
 
                 throw nvae;
             }
-            switch (alt9) {
+            switch (alt4) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:398:6: this_STRING_0= RULE_STRING
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:298:6: this_STRING_0= RULE_STRING
                     {
-                    this_STRING_0=(Token)match(input,RULE_STRING,FollowSets000.FOLLOW_RULE_STRING_in_ruleEString862); 
+                    this_STRING_0=(Token)match(input,RULE_STRING,FollowSets000.FOLLOW_RULE_STRING_in_ruleEString652); 
 
                     		current.merge(this_STRING_0);
                         
@@ -1044,9 +812,9 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:406:10: this_ID_1= RULE_ID
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:306:10: this_ID_1= RULE_ID
                     {
-                    this_ID_1=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_ruleEString888); 
+                    this_ID_1=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_RULE_ID_in_ruleEString678); 
 
                     		current.merge(this_ID_1);
                         
@@ -1077,7 +845,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleInterface"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:421:1: entryRuleInterface returns [EObject current=null] : iv_ruleInterface= ruleInterface EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:321:1: entryRuleInterface returns [EObject current=null] : iv_ruleInterface= ruleInterface EOF ;
     public final EObject entryRuleInterface() throws RecognitionException {
         EObject current = null;
 
@@ -1085,17 +853,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:422:2: (iv_ruleInterface= ruleInterface EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:423:2: iv_ruleInterface= ruleInterface EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:322:2: (iv_ruleInterface= ruleInterface EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:323:2: iv_ruleInterface= ruleInterface EOF
             {
              newCompositeNode(grammarAccess.getInterfaceRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInterface_in_entryRuleInterface933);
+            pushFollow(FollowSets000.FOLLOW_ruleInterface_in_entryRuleInterface723);
             iv_ruleInterface=ruleInterface();
 
             state._fsp--;
 
              current =iv_ruleInterface; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleInterface943); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleInterface733); 
 
             }
 
@@ -1113,7 +881,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleInterface"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:430:1: ruleInterface returns [EObject current=null] : (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )? otherlv_15= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:330:1: ruleInterface returns [EObject current=null] : (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )? otherlv_15= '}' ) ;
     public final EObject ruleInterface() throws RecognitionException {
         EObject current = null;
 
@@ -1138,26 +906,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:433:28: ( (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )? otherlv_15= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:434:1: (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )? otherlv_15= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:333:28: ( (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )? otherlv_15= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:334:1: (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )? otherlv_15= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:434:1: (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )? otherlv_15= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:434:3: otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )? otherlv_15= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:334:1: (otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )? otherlv_15= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:334:3: otherlv_0= 'Interface' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )? otherlv_15= '}'
             {
-            otherlv_0=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleInterface980); 
+            otherlv_0=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleInterface770); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getInterfaceAccess().getInterfaceKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:438:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:439:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:338:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:339:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:439:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:440:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:339:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:340:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getInterfaceAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInterface1001);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInterface791);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -1179,34 +947,34 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleInterface1013); 
+            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleInterface803); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_2());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:460:1: (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )?
-            int alt11=2;
-            int LA11_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:360:1: (otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )?
+            int alt6=2;
+            int LA6_0 = input.LA(1);
 
-            if ( (LA11_0==19) ) {
-                alt11=1;
+            if ( (LA6_0==15) ) {
+                alt6=1;
             }
-            switch (alt11) {
+            switch (alt6) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:460:3: otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:360:3: otherlv_3= 'parentInterfaces' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')'
                     {
-                    otherlv_3=(Token)match(input,19,FollowSets000.FOLLOW_19_in_ruleInterface1026); 
+                    otherlv_3=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleInterface816); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getInterfaceAccess().getParentInterfacesKeyword_3_0());
                         
-                    otherlv_4=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleInterface1038); 
+                    otherlv_4=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleInterface828); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getInterfaceAccess().getLeftParenthesisKeyword_3_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:468:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:469:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:368:1: ( ( ruleEString ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:369:1: ( ruleEString )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:469:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:470:3: ruleEString
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:369:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:370:3: ruleEString
                     {
 
                     			if (current==null) {
@@ -1216,7 +984,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInterface1061);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInterface851);
                     ruleEString();
 
                     state._fsp--;
@@ -1230,30 +998,30 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:483:2: (otherlv_6= ',' ( ( ruleEString ) ) )*
-                    loop10:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:383:2: (otherlv_6= ',' ( ( ruleEString ) ) )*
+                    loop5:
                     do {
-                        int alt10=2;
-                        int LA10_0 = input.LA(1);
+                        int alt5=2;
+                        int LA5_0 = input.LA(1);
 
-                        if ( (LA10_0==14) ) {
-                            alt10=1;
+                        if ( (LA5_0==17) ) {
+                            alt5=1;
                         }
 
 
-                        switch (alt10) {
+                        switch (alt5) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:483:4: otherlv_6= ',' ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:383:4: otherlv_6= ',' ( ( ruleEString ) )
                     	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleInterface1074); 
+                    	    otherlv_6=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleInterface864); 
 
                     	        	newLeafNode(otherlv_6, grammarAccess.getInterfaceAccess().getCommaKeyword_3_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:487:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:488:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:387:1: ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:388:1: ( ruleEString )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:488:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:489:3: ruleEString
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:388:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:389:3: ruleEString
                     	    {
 
                     	    			if (current==null) {
@@ -1263,7 +1031,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getInterfaceAccess().getParentInterfacesInterfaceCrossReference_3_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInterface1097);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInterface887);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -1282,11 +1050,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop10;
+                    	    break loop5;
                         }
                     } while (true);
 
-                    otherlv_8=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleInterface1111); 
+                    otherlv_8=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleInterface901); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getInterfaceAccess().getRightParenthesisKeyword_3_4());
                         
@@ -1296,35 +1064,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:506:3: (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )?
-            int alt13=2;
-            int LA13_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:406:3: (otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}' )?
+            int alt8=2;
+            int LA8_0 = input.LA(1);
 
-            if ( (LA13_0==22) ) {
-                alt13=1;
+            if ( (LA8_0==19) ) {
+                alt8=1;
             }
-            switch (alt13) {
+            switch (alt8) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:506:5: otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:406:5: otherlv_9= 'signatures' otherlv_10= '{' ( (lv_signatures_11_0= ruleSignature ) ) (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )* otherlv_14= '}'
                     {
-                    otherlv_9=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleInterface1126); 
+                    otherlv_9=(Token)match(input,19,FollowSets000.FOLLOW_19_in_ruleInterface916); 
 
                         	newLeafNode(otherlv_9, grammarAccess.getInterfaceAccess().getSignaturesKeyword_4_0());
                         
-                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleInterface1138); 
+                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleInterface928); 
 
                         	newLeafNode(otherlv_10, grammarAccess.getInterfaceAccess().getLeftCurlyBracketKeyword_4_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:514:1: ( (lv_signatures_11_0= ruleSignature ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:515:1: (lv_signatures_11_0= ruleSignature )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:414:1: ( (lv_signatures_11_0= ruleSignature ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:415:1: (lv_signatures_11_0= ruleSignature )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:515:1: (lv_signatures_11_0= ruleSignature )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:516:3: lv_signatures_11_0= ruleSignature
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:415:1: (lv_signatures_11_0= ruleSignature )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:416:3: lv_signatures_11_0= ruleSignature
                     {
                      
                     	        newCompositeNode(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleSignature_in_ruleInterface1159);
+                    pushFollow(FollowSets000.FOLLOW_ruleSignature_in_ruleInterface949);
                     lv_signatures_11_0=ruleSignature();
 
                     state._fsp--;
@@ -1346,35 +1114,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:532:2: (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )*
-                    loop12:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:432:2: (otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) ) )*
+                    loop7:
                     do {
-                        int alt12=2;
-                        int LA12_0 = input.LA(1);
+                        int alt7=2;
+                        int LA7_0 = input.LA(1);
 
-                        if ( (LA12_0==14) ) {
-                            alt12=1;
+                        if ( (LA7_0==17) ) {
+                            alt7=1;
                         }
 
 
-                        switch (alt12) {
+                        switch (alt7) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:532:4: otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:432:4: otherlv_12= ',' ( (lv_signatures_13_0= ruleSignature ) )
                     	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleInterface1172); 
+                    	    otherlv_12=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleInterface962); 
 
                     	        	newLeafNode(otherlv_12, grammarAccess.getInterfaceAccess().getCommaKeyword_4_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:536:1: ( (lv_signatures_13_0= ruleSignature ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:537:1: (lv_signatures_13_0= ruleSignature )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:436:1: ( (lv_signatures_13_0= ruleSignature ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:437:1: (lv_signatures_13_0= ruleSignature )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:537:1: (lv_signatures_13_0= ruleSignature )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:538:3: lv_signatures_13_0= ruleSignature
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:437:1: (lv_signatures_13_0= ruleSignature )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:438:3: lv_signatures_13_0= ruleSignature
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getInterfaceAccess().getSignaturesSignatureParserRuleCall_4_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleSignature_in_ruleInterface1193);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleSignature_in_ruleInterface983);
                     	    lv_signatures_13_0=ruleSignature();
 
                     	    state._fsp--;
@@ -1401,11 +1169,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop12;
+                    	    break loop7;
                         }
                     } while (true);
 
-                    otherlv_14=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleInterface1207); 
+                    otherlv_14=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleInterface997); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_4_4());
                         
@@ -1415,7 +1183,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_15=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleInterface1221); 
+            otherlv_15=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleInterface1011); 
 
                 	newLeafNode(otherlv_15, grammarAccess.getInterfaceAccess().getRightCurlyBracketKeyword_5());
                 
@@ -1440,7 +1208,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleRepositoryComponent_Impl"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:570:1: entryRuleRepositoryComponent_Impl returns [EObject current=null] : iv_ruleRepositoryComponent_Impl= ruleRepositoryComponent_Impl EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:470:1: entryRuleRepositoryComponent_Impl returns [EObject current=null] : iv_ruleRepositoryComponent_Impl= ruleRepositoryComponent_Impl EOF ;
     public final EObject entryRuleRepositoryComponent_Impl() throws RecognitionException {
         EObject current = null;
 
@@ -1448,17 +1216,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:571:2: (iv_ruleRepositoryComponent_Impl= ruleRepositoryComponent_Impl EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:572:2: iv_ruleRepositoryComponent_Impl= ruleRepositoryComponent_Impl EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:471:2: (iv_ruleRepositoryComponent_Impl= ruleRepositoryComponent_Impl EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:472:2: iv_ruleRepositoryComponent_Impl= ruleRepositoryComponent_Impl EOF
             {
              newCompositeNode(grammarAccess.getRepositoryComponent_ImplRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_Impl_in_entryRuleRepositoryComponent_Impl1257);
+            pushFollow(FollowSets000.FOLLOW_ruleRepositoryComponent_Impl_in_entryRuleRepositoryComponent_Impl1047);
             iv_ruleRepositoryComponent_Impl=ruleRepositoryComponent_Impl();
 
             state._fsp--;
 
              current =iv_ruleRepositoryComponent_Impl; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRepositoryComponent_Impl1267); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRepositoryComponent_Impl1057); 
 
             }
 
@@ -1476,7 +1244,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleRepositoryComponent_Impl"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:579:1: ruleRepositoryComponent_Impl returns [EObject current=null] : (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:479:1: ruleRepositoryComponent_Impl returns [EObject current=null] : (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' ) ;
     public final EObject ruleRepositoryComponent_Impl() throws RecognitionException {
         EObject current = null;
 
@@ -1509,26 +1277,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:582:28: ( (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:583:1: (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:482:28: ( (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:483:1: (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:583:1: (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:583:3: otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:483:1: (otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:483:3: otherlv_0= 'RepositoryComponent' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )? (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )? otherlv_21= '}'
             {
-            otherlv_0=(Token)match(input,23,FollowSets000.FOLLOW_23_in_ruleRepositoryComponent_Impl1304); 
+            otherlv_0=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleRepositoryComponent_Impl1094); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getRepositoryComponent_ImplAccess().getRepositoryComponentKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:587:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:588:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:487:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:488:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:588:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:589:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:488:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:489:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1325);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1115);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -1550,34 +1318,34 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepositoryComponent_Impl1337); 
+            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepositoryComponent_Impl1127); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_2());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:609:1: (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )?
-            int alt15=2;
-            int LA15_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:509:1: (otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )?
+            int alt10=2;
+            int LA10_0 = input.LA(1);
 
-            if ( (LA15_0==24) ) {
-                alt15=1;
+            if ( (LA10_0==21) ) {
+                alt10=1;
             }
-            switch (alt15) {
+            switch (alt10) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:609:3: otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:509:3: otherlv_3= 'relationship' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')'
                     {
-                    otherlv_3=(Token)match(input,24,FollowSets000.FOLLOW_24_in_ruleRepositoryComponent_Impl1350); 
+                    otherlv_3=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleRepositoryComponent_Impl1140); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipKeyword_3_0());
                         
-                    otherlv_4=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleRepositoryComponent_Impl1362); 
+                    otherlv_4=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleRepositoryComponent_Impl1152); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getRepositoryComponent_ImplAccess().getLeftParenthesisKeyword_3_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:617:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:618:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:517:1: ( ( ruleEString ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:518:1: ( ruleEString )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:618:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:619:3: ruleEString
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:518:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:519:3: ruleEString
                     {
 
                     			if (current==null) {
@@ -1587,7 +1355,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1385);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1175);
                     ruleEString();
 
                     state._fsp--;
@@ -1601,30 +1369,30 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:632:2: (otherlv_6= ',' ( ( ruleEString ) ) )*
-                    loop14:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:532:2: (otherlv_6= ',' ( ( ruleEString ) ) )*
+                    loop9:
                     do {
-                        int alt14=2;
-                        int LA14_0 = input.LA(1);
+                        int alt9=2;
+                        int LA9_0 = input.LA(1);
 
-                        if ( (LA14_0==14) ) {
-                            alt14=1;
+                        if ( (LA9_0==17) ) {
+                            alt9=1;
                         }
 
 
-                        switch (alt14) {
+                        switch (alt9) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:632:4: otherlv_6= ',' ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:532:4: otherlv_6= ',' ( ( ruleEString ) )
                     	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepositoryComponent_Impl1398); 
+                    	    otherlv_6=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleRepositoryComponent_Impl1188); 
 
                     	        	newLeafNode(otherlv_6, grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_3_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:636:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:637:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:536:1: ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:537:1: ( ruleEString )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:637:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:638:3: ruleEString
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:537:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:538:3: ruleEString
                     	    {
 
                     	    			if (current==null) {
@@ -1634,7 +1402,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRelationshipRelationshipCrossReference_3_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1421);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1211);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -1653,11 +1421,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop14;
+                    	    break loop9;
                         }
                     } while (true);
 
-                    otherlv_8=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleRepositoryComponent_Impl1435); 
+                    otherlv_8=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleRepositoryComponent_Impl1225); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getRepositoryComponent_ImplAccess().getRightParenthesisKeyword_3_4());
                         
@@ -1667,35 +1435,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:655:3: (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )?
-            int alt17=2;
-            int LA17_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:555:3: (otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}' )?
+            int alt12=2;
+            int LA12_0 = input.LA(1);
 
-            if ( (LA17_0==25) ) {
-                alt17=1;
+            if ( (LA12_0==22) ) {
+                alt12=1;
             }
-            switch (alt17) {
+            switch (alt12) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:655:5: otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:555:5: otherlv_9= 'providedRoles' otherlv_10= '{' ( (lv_providedRoles_11_0= ruleProvidedRole ) ) (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )* otherlv_14= '}'
                     {
-                    otherlv_9=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleRepositoryComponent_Impl1450); 
+                    otherlv_9=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleRepositoryComponent_Impl1240); 
 
                         	newLeafNode(otherlv_9, grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesKeyword_4_0());
                         
-                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepositoryComponent_Impl1462); 
+                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepositoryComponent_Impl1252); 
 
                         	newLeafNode(otherlv_10, grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_4_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:663:1: ( (lv_providedRoles_11_0= ruleProvidedRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:664:1: (lv_providedRoles_11_0= ruleProvidedRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:563:1: ( (lv_providedRoles_11_0= ruleProvidedRole ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:564:1: (lv_providedRoles_11_0= ruleProvidedRole )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:664:1: (lv_providedRoles_11_0= ruleProvidedRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:665:3: lv_providedRoles_11_0= ruleProvidedRole
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:564:1: (lv_providedRoles_11_0= ruleProvidedRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:565:3: lv_providedRoles_11_0= ruleProvidedRole
                     {
                      
                     	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1483);
+                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1273);
                     lv_providedRoles_11_0=ruleProvidedRole();
 
                     state._fsp--;
@@ -1717,35 +1485,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:681:2: (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )*
-                    loop16:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:581:2: (otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) ) )*
+                    loop11:
                     do {
-                        int alt16=2;
-                        int LA16_0 = input.LA(1);
+                        int alt11=2;
+                        int LA11_0 = input.LA(1);
 
-                        if ( (LA16_0==14) ) {
-                            alt16=1;
+                        if ( (LA11_0==17) ) {
+                            alt11=1;
                         }
 
 
-                        switch (alt16) {
+                        switch (alt11) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:681:4: otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:581:4: otherlv_12= ',' ( (lv_providedRoles_13_0= ruleProvidedRole ) )
                     	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepositoryComponent_Impl1496); 
+                    	    otherlv_12=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleRepositoryComponent_Impl1286); 
 
                     	        	newLeafNode(otherlv_12, grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_4_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:685:1: ( (lv_providedRoles_13_0= ruleProvidedRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:686:1: (lv_providedRoles_13_0= ruleProvidedRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:585:1: ( (lv_providedRoles_13_0= ruleProvidedRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:586:1: (lv_providedRoles_13_0= ruleProvidedRole )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:686:1: (lv_providedRoles_13_0= ruleProvidedRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:687:3: lv_providedRoles_13_0= ruleProvidedRole
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:586:1: (lv_providedRoles_13_0= ruleProvidedRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:587:3: lv_providedRoles_13_0= ruleProvidedRole
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getProvidedRolesProvidedRoleParserRuleCall_4_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1517);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1307);
                     	    lv_providedRoles_13_0=ruleProvidedRole();
 
                     	    state._fsp--;
@@ -1772,11 +1540,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop16;
+                    	    break loop11;
                         }
                     } while (true);
 
-                    otherlv_14=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepositoryComponent_Impl1531); 
+                    otherlv_14=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleRepositoryComponent_Impl1321); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_4_4());
                         
@@ -1786,35 +1554,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:707:3: (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )?
-            int alt19=2;
-            int LA19_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:607:3: (otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}' )?
+            int alt14=2;
+            int LA14_0 = input.LA(1);
 
-            if ( (LA19_0==26) ) {
-                alt19=1;
+            if ( (LA14_0==23) ) {
+                alt14=1;
             }
-            switch (alt19) {
+            switch (alt14) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:707:5: otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:607:5: otherlv_15= 'requiredRoles' otherlv_16= '{' ( (lv_requiredRoles_17_0= ruleRequiredRole ) ) (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )* otherlv_20= '}'
                     {
-                    otherlv_15=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleRepositoryComponent_Impl1546); 
+                    otherlv_15=(Token)match(input,23,FollowSets000.FOLLOW_23_in_ruleRepositoryComponent_Impl1336); 
 
                         	newLeafNode(otherlv_15, grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesKeyword_5_0());
                         
-                    otherlv_16=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepositoryComponent_Impl1558); 
+                    otherlv_16=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRepositoryComponent_Impl1348); 
 
                         	newLeafNode(otherlv_16, grammarAccess.getRepositoryComponent_ImplAccess().getLeftCurlyBracketKeyword_5_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:715:1: ( (lv_requiredRoles_17_0= ruleRequiredRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:716:1: (lv_requiredRoles_17_0= ruleRequiredRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:615:1: ( (lv_requiredRoles_17_0= ruleRequiredRole ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:616:1: (lv_requiredRoles_17_0= ruleRequiredRole )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:716:1: (lv_requiredRoles_17_0= ruleRequiredRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:717:3: lv_requiredRoles_17_0= ruleRequiredRole
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:616:1: (lv_requiredRoles_17_0= ruleRequiredRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:617:3: lv_requiredRoles_17_0= ruleRequiredRole
                     {
                      
                     	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl1579);
+                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl1369);
                     lv_requiredRoles_17_0=ruleRequiredRole();
 
                     state._fsp--;
@@ -1836,35 +1604,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:733:2: (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )*
-                    loop18:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:633:2: (otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) ) )*
+                    loop13:
                     do {
-                        int alt18=2;
-                        int LA18_0 = input.LA(1);
+                        int alt13=2;
+                        int LA13_0 = input.LA(1);
 
-                        if ( (LA18_0==14) ) {
-                            alt18=1;
+                        if ( (LA13_0==17) ) {
+                            alt13=1;
                         }
 
 
-                        switch (alt18) {
+                        switch (alt13) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:733:4: otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:633:4: otherlv_18= ',' ( (lv_requiredRoles_19_0= ruleRequiredRole ) )
                     	    {
-                    	    otherlv_18=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRepositoryComponent_Impl1592); 
+                    	    otherlv_18=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleRepositoryComponent_Impl1382); 
 
                     	        	newLeafNode(otherlv_18, grammarAccess.getRepositoryComponent_ImplAccess().getCommaKeyword_5_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:737:1: ( (lv_requiredRoles_19_0= ruleRequiredRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:738:1: (lv_requiredRoles_19_0= ruleRequiredRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:637:1: ( (lv_requiredRoles_19_0= ruleRequiredRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:638:1: (lv_requiredRoles_19_0= ruleRequiredRole )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:738:1: (lv_requiredRoles_19_0= ruleRequiredRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:739:3: lv_requiredRoles_19_0= ruleRequiredRole
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:638:1: (lv_requiredRoles_19_0= ruleRequiredRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:639:3: lv_requiredRoles_19_0= ruleRequiredRole
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getRepositoryComponent_ImplAccess().getRequiredRolesRequiredRoleParserRuleCall_5_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl1613);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl1403);
                     	    lv_requiredRoles_19_0=ruleRequiredRole();
 
                     	    state._fsp--;
@@ -1891,11 +1659,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop18;
+                    	    break loop13;
                         }
                     } while (true);
 
-                    otherlv_20=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepositoryComponent_Impl1627); 
+                    otherlv_20=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleRepositoryComponent_Impl1417); 
 
                         	newLeafNode(otherlv_20, grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_5_4());
                         
@@ -1905,7 +1673,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_21=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRepositoryComponent_Impl1641); 
+            otherlv_21=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleRepositoryComponent_Impl1431); 
 
                 	newLeafNode(otherlv_21, grammarAccess.getRepositoryComponent_ImplAccess().getRightCurlyBracketKeyword_6());
                 
@@ -1930,7 +1698,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleCollectionDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:771:1: entryRuleCollectionDataType returns [EObject current=null] : iv_ruleCollectionDataType= ruleCollectionDataType EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:671:1: entryRuleCollectionDataType returns [EObject current=null] : iv_ruleCollectionDataType= ruleCollectionDataType EOF ;
     public final EObject entryRuleCollectionDataType() throws RecognitionException {
         EObject current = null;
 
@@ -1938,17 +1706,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:772:2: (iv_ruleCollectionDataType= ruleCollectionDataType EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:773:2: iv_ruleCollectionDataType= ruleCollectionDataType EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:672:2: (iv_ruleCollectionDataType= ruleCollectionDataType EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:673:2: iv_ruleCollectionDataType= ruleCollectionDataType EOF
             {
              newCompositeNode(grammarAccess.getCollectionDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleCollectionDataType_in_entryRuleCollectionDataType1677);
+            pushFollow(FollowSets000.FOLLOW_ruleCollectionDataType_in_entryRuleCollectionDataType1467);
             iv_ruleCollectionDataType=ruleCollectionDataType();
 
             state._fsp--;
 
              current =iv_ruleCollectionDataType; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCollectionDataType1687); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCollectionDataType1477); 
 
             }
 
@@ -1966,7 +1734,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleCollectionDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:780:1: ruleCollectionDataType returns [EObject current=null] : (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:680:1: ruleCollectionDataType returns [EObject current=null] : (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' ) ;
     public final EObject ruleCollectionDataType() throws RecognitionException {
         EObject current = null;
 
@@ -1980,26 +1748,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:783:28: ( (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:784:1: (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:683:28: ( (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:684:1: (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:784:1: (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:784:3: otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:684:1: (otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:684:3: otherlv_0= 'CollectionDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'innerType' ( ( ruleEString ) ) otherlv_5= '}'
             {
-            otherlv_0=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleCollectionDataType1724); 
+            otherlv_0=(Token)match(input,24,FollowSets000.FOLLOW_24_in_ruleCollectionDataType1514); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getCollectionDataTypeAccess().getCollectionDataTypeKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:788:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:789:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:688:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:689:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:789:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:790:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:689:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:690:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getCollectionDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCollectionDataType1745);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCollectionDataType1535);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -2021,19 +1789,19 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCollectionDataType1757); 
+            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCollectionDataType1547); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getCollectionDataTypeAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_3=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleCollectionDataType1769); 
+            otherlv_3=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleCollectionDataType1559); 
 
                 	newLeafNode(otherlv_3, grammarAccess.getCollectionDataTypeAccess().getInnerTypeKeyword_3());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:814:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:815:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:714:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:715:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:815:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:816:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:715:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:716:3: ruleEString
             {
 
             			if (current==null) {
@@ -2043,7 +1811,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getCollectionDataTypeAccess().getInnerTypeDataTypeCrossReference_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCollectionDataType1792);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCollectionDataType1582);
             ruleEString();
 
             state._fsp--;
@@ -2057,7 +1825,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleCollectionDataType1804); 
+            otherlv_5=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleCollectionDataType1594); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getCollectionDataTypeAccess().getRightCurlyBracketKeyword_5());
                 
@@ -2082,7 +1850,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleCompositeDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:841:1: entryRuleCompositeDataType returns [EObject current=null] : iv_ruleCompositeDataType= ruleCompositeDataType EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:741:1: entryRuleCompositeDataType returns [EObject current=null] : iv_ruleCompositeDataType= ruleCompositeDataType EOF ;
     public final EObject entryRuleCompositeDataType() throws RecognitionException {
         EObject current = null;
 
@@ -2090,17 +1858,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:842:2: (iv_ruleCompositeDataType= ruleCompositeDataType EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:843:2: iv_ruleCompositeDataType= ruleCompositeDataType EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:742:2: (iv_ruleCompositeDataType= ruleCompositeDataType EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:743:2: iv_ruleCompositeDataType= ruleCompositeDataType EOF
             {
              newCompositeNode(grammarAccess.getCompositeDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleCompositeDataType_in_entryRuleCompositeDataType1840);
+            pushFollow(FollowSets000.FOLLOW_ruleCompositeDataType_in_entryRuleCompositeDataType1630);
             iv_ruleCompositeDataType=ruleCompositeDataType();
 
             state._fsp--;
 
              current =iv_ruleCompositeDataType; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCompositeDataType1850); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCompositeDataType1640); 
 
             }
 
@@ -2118,7 +1886,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleCompositeDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:850:1: ruleCompositeDataType returns [EObject current=null] : (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:750:1: ruleCompositeDataType returns [EObject current=null] : (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' ) ;
     public final EObject ruleCompositeDataType() throws RecognitionException {
         EObject current = null;
 
@@ -2143,26 +1911,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:853:28: ( (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:854:1: (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:753:28: ( (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:754:1: (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:854:1: (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:854:3: otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:754:1: (otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:754:3: otherlv_0= 'CompositeDataType' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )? (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )? otherlv_15= '}'
             {
-            otherlv_0=(Token)match(input,29,FollowSets000.FOLLOW_29_in_ruleCompositeDataType1887); 
+            otherlv_0=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleCompositeDataType1677); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getCompositeDataTypeAccess().getCompositeDataTypeKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:858:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:859:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:758:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:759:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:859:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:860:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:759:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:760:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeDataType1908);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeDataType1698);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -2184,34 +1952,34 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCompositeDataType1920); 
+            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCompositeDataType1710); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_2());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:880:1: (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )?
-            int alt21=2;
-            int LA21_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:780:1: (otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')' )?
+            int alt16=2;
+            int LA16_0 = input.LA(1);
 
-            if ( (LA21_0==30) ) {
-                alt21=1;
+            if ( (LA16_0==27) ) {
+                alt16=1;
             }
-            switch (alt21) {
+            switch (alt16) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:880:3: otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:780:3: otherlv_3= 'parentTypes' otherlv_4= '(' ( ( ruleEString ) ) (otherlv_6= ',' ( ( ruleEString ) ) )* otherlv_8= ')'
                     {
-                    otherlv_3=(Token)match(input,30,FollowSets000.FOLLOW_30_in_ruleCompositeDataType1933); 
+                    otherlv_3=(Token)match(input,27,FollowSets000.FOLLOW_27_in_ruleCompositeDataType1723); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getCompositeDataTypeAccess().getParentTypesKeyword_3_0());
                         
-                    otherlv_4=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleCompositeDataType1945); 
+                    otherlv_4=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleCompositeDataType1735); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getCompositeDataTypeAccess().getLeftParenthesisKeyword_3_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:888:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:889:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:788:1: ( ( ruleEString ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:789:1: ( ruleEString )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:889:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:890:3: ruleEString
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:789:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:790:3: ruleEString
                     {
 
                     			if (current==null) {
@@ -2221,7 +1989,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeDataType1968);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeDataType1758);
                     ruleEString();
 
                     state._fsp--;
@@ -2235,30 +2003,30 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:903:2: (otherlv_6= ',' ( ( ruleEString ) ) )*
-                    loop20:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:803:2: (otherlv_6= ',' ( ( ruleEString ) ) )*
+                    loop15:
                     do {
-                        int alt20=2;
-                        int LA20_0 = input.LA(1);
+                        int alt15=2;
+                        int LA15_0 = input.LA(1);
 
-                        if ( (LA20_0==14) ) {
-                            alt20=1;
+                        if ( (LA15_0==17) ) {
+                            alt15=1;
                         }
 
 
-                        switch (alt20) {
+                        switch (alt15) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:903:4: otherlv_6= ',' ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:803:4: otherlv_6= ',' ( ( ruleEString ) )
                     	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleCompositeDataType1981); 
+                    	    otherlv_6=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleCompositeDataType1771); 
 
                     	        	newLeafNode(otherlv_6, grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_3_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:907:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:908:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:807:1: ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:808:1: ( ruleEString )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:908:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:909:3: ruleEString
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:808:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:809:3: ruleEString
                     	    {
 
                     	    			if (current==null) {
@@ -2268,7 +2036,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getParentTypesCompositeDataTypeCrossReference_3_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeDataType2004);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeDataType1794);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -2287,11 +2055,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop20;
+                    	    break loop15;
                         }
                     } while (true);
 
-                    otherlv_8=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleCompositeDataType2018); 
+                    otherlv_8=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleCompositeDataType1808); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getCompositeDataTypeAccess().getRightParenthesisKeyword_3_4());
                         
@@ -2301,35 +2069,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:926:3: (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )?
-            int alt23=2;
-            int LA23_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:826:3: (otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}' )?
+            int alt18=2;
+            int LA18_0 = input.LA(1);
 
-            if ( (LA23_0==31) ) {
-                alt23=1;
+            if ( (LA18_0==28) ) {
+                alt18=1;
             }
-            switch (alt23) {
+            switch (alt18) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:926:5: otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:826:5: otherlv_9= 'innerDeclarations' otherlv_10= '{' ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) ) (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )* otherlv_14= '}'
                     {
-                    otherlv_9=(Token)match(input,31,FollowSets000.FOLLOW_31_in_ruleCompositeDataType2033); 
+                    otherlv_9=(Token)match(input,28,FollowSets000.FOLLOW_28_in_ruleCompositeDataType1823); 
 
                         	newLeafNode(otherlv_9, grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsKeyword_4_0());
                         
-                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCompositeDataType2045); 
+                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCompositeDataType1835); 
 
                         	newLeafNode(otherlv_10, grammarAccess.getCompositeDataTypeAccess().getLeftCurlyBracketKeyword_4_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:934:1: ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:935:1: (lv_innerDeclarations_11_0= ruleInnerDeclaration )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:834:1: ( (lv_innerDeclarations_11_0= ruleInnerDeclaration ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:835:1: (lv_innerDeclarations_11_0= ruleInnerDeclaration )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:935:1: (lv_innerDeclarations_11_0= ruleInnerDeclaration )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:936:3: lv_innerDeclarations_11_0= ruleInnerDeclaration
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:835:1: (lv_innerDeclarations_11_0= ruleInnerDeclaration )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:836:3: lv_innerDeclarations_11_0= ruleInnerDeclaration
                     {
                      
                     	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType2066);
+                    pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType1856);
                     lv_innerDeclarations_11_0=ruleInnerDeclaration();
 
                     state._fsp--;
@@ -2351,35 +2119,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:952:2: (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )*
-                    loop22:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:852:2: (otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) ) )*
+                    loop17:
                     do {
-                        int alt22=2;
-                        int LA22_0 = input.LA(1);
+                        int alt17=2;
+                        int LA17_0 = input.LA(1);
 
-                        if ( (LA22_0==14) ) {
-                            alt22=1;
+                        if ( (LA17_0==17) ) {
+                            alt17=1;
                         }
 
 
-                        switch (alt22) {
+                        switch (alt17) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:952:4: otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:852:4: otherlv_12= ',' ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) )
                     	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleCompositeDataType2079); 
+                    	    otherlv_12=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleCompositeDataType1869); 
 
                     	        	newLeafNode(otherlv_12, grammarAccess.getCompositeDataTypeAccess().getCommaKeyword_4_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:956:1: ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:957:1: (lv_innerDeclarations_13_0= ruleInnerDeclaration )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:856:1: ( (lv_innerDeclarations_13_0= ruleInnerDeclaration ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:857:1: (lv_innerDeclarations_13_0= ruleInnerDeclaration )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:957:1: (lv_innerDeclarations_13_0= ruleInnerDeclaration )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:958:3: lv_innerDeclarations_13_0= ruleInnerDeclaration
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:857:1: (lv_innerDeclarations_13_0= ruleInnerDeclaration )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:858:3: lv_innerDeclarations_13_0= ruleInnerDeclaration
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getCompositeDataTypeAccess().getInnerDeclarationsInnerDeclarationParserRuleCall_4_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType2100);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType1890);
                     	    lv_innerDeclarations_13_0=ruleInnerDeclaration();
 
                     	    state._fsp--;
@@ -2406,11 +2174,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop22;
+                    	    break loop17;
                         }
                     } while (true);
 
-                    otherlv_14=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleCompositeDataType2114); 
+                    otherlv_14=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleCompositeDataType1904); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_4_4());
                         
@@ -2420,7 +2188,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_15=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleCompositeDataType2128); 
+            otherlv_15=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleCompositeDataType1918); 
 
                 	newLeafNode(otherlv_15, grammarAccess.getCompositeDataTypeAccess().getRightCurlyBracketKeyword_5());
                 
@@ -2445,7 +2213,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRulePrimitiveDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:990:1: entryRulePrimitiveDataType returns [EObject current=null] : iv_rulePrimitiveDataType= rulePrimitiveDataType EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:890:1: entryRulePrimitiveDataType returns [EObject current=null] : iv_rulePrimitiveDataType= rulePrimitiveDataType EOF ;
     public final EObject entryRulePrimitiveDataType() throws RecognitionException {
         EObject current = null;
 
@@ -2453,17 +2221,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:991:2: (iv_rulePrimitiveDataType= rulePrimitiveDataType EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:992:2: iv_rulePrimitiveDataType= rulePrimitiveDataType EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:891:2: (iv_rulePrimitiveDataType= rulePrimitiveDataType EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:892:2: iv_rulePrimitiveDataType= rulePrimitiveDataType EOF
             {
              newCompositeNode(grammarAccess.getPrimitiveDataTypeRule()); 
-            pushFollow(FollowSets000.FOLLOW_rulePrimitiveDataType_in_entryRulePrimitiveDataType2164);
+            pushFollow(FollowSets000.FOLLOW_rulePrimitiveDataType_in_entryRulePrimitiveDataType1954);
             iv_rulePrimitiveDataType=rulePrimitiveDataType();
 
             state._fsp--;
 
              current =iv_rulePrimitiveDataType; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRulePrimitiveDataType2174); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRulePrimitiveDataType1964); 
 
             }
 
@@ -2481,7 +2249,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "rulePrimitiveDataType"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:999:1: rulePrimitiveDataType returns [EObject current=null] : (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:899:1: rulePrimitiveDataType returns [EObject current=null] : (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' ) ;
     public final EObject rulePrimitiveDataType() throws RecognitionException {
         EObject current = null;
 
@@ -2498,34 +2266,34 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1002:28: ( (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1003:1: (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:902:28: ( (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:903:1: (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1003:1: (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1003:3: otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:903:1: (otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:903:3: otherlv_0= 'PrimitiveDataType' otherlv_1= '{' otherlv_2= 'type' ( (lv_type_3_0= rulePrimitiveTypeEnum ) ) otherlv_4= 'ref' ( (lv_name_5_0= ruleEString ) ) otherlv_6= '}'
             {
-            otherlv_0=(Token)match(input,32,FollowSets000.FOLLOW_32_in_rulePrimitiveDataType2211); 
+            otherlv_0=(Token)match(input,29,FollowSets000.FOLLOW_29_in_rulePrimitiveDataType2001); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getPrimitiveDataTypeAccess().getPrimitiveDataTypeKeyword_0());
                 
-            otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_rulePrimitiveDataType2223); 
+            otherlv_1=(Token)match(input,12,FollowSets000.FOLLOW_12_in_rulePrimitiveDataType2013); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getPrimitiveDataTypeAccess().getLeftCurlyBracketKeyword_1());
                 
-            otherlv_2=(Token)match(input,33,FollowSets000.FOLLOW_33_in_rulePrimitiveDataType2235); 
+            otherlv_2=(Token)match(input,30,FollowSets000.FOLLOW_30_in_rulePrimitiveDataType2025); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getPrimitiveDataTypeAccess().getTypeKeyword_2());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1015:1: ( (lv_type_3_0= rulePrimitiveTypeEnum ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1016:1: (lv_type_3_0= rulePrimitiveTypeEnum )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:915:1: ( (lv_type_3_0= rulePrimitiveTypeEnum ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:916:1: (lv_type_3_0= rulePrimitiveTypeEnum )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1016:1: (lv_type_3_0= rulePrimitiveTypeEnum )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1017:3: lv_type_3_0= rulePrimitiveTypeEnum
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:916:1: (lv_type_3_0= rulePrimitiveTypeEnum )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:917:3: lv_type_3_0= rulePrimitiveTypeEnum
             {
              
             	        newCompositeNode(grammarAccess.getPrimitiveDataTypeAccess().getTypePrimitiveTypeEnumEnumRuleCall_3_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_rulePrimitiveTypeEnum_in_rulePrimitiveDataType2256);
+            pushFollow(FollowSets000.FOLLOW_rulePrimitiveTypeEnum_in_rulePrimitiveDataType2046);
             lv_type_3_0=rulePrimitiveTypeEnum();
 
             state._fsp--;
@@ -2547,20 +2315,20 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_4=(Token)match(input,34,FollowSets000.FOLLOW_34_in_rulePrimitiveDataType2268); 
+            otherlv_4=(Token)match(input,31,FollowSets000.FOLLOW_31_in_rulePrimitiveDataType2058); 
 
                 	newLeafNode(otherlv_4, grammarAccess.getPrimitiveDataTypeAccess().getRefKeyword_4());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1037:1: ( (lv_name_5_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1038:1: (lv_name_5_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:937:1: ( (lv_name_5_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:938:1: (lv_name_5_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1038:1: (lv_name_5_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1039:3: lv_name_5_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:938:1: (lv_name_5_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:939:3: lv_name_5_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getPrimitiveDataTypeAccess().getNameEStringParserRuleCall_5_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rulePrimitiveDataType2289);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_rulePrimitiveDataType2079);
             lv_name_5_0=ruleEString();
 
             state._fsp--;
@@ -2582,7 +2350,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_6=(Token)match(input,15,FollowSets000.FOLLOW_15_in_rulePrimitiveDataType2301); 
+            otherlv_6=(Token)match(input,13,FollowSets000.FOLLOW_13_in_rulePrimitiveDataType2091); 
 
                 	newLeafNode(otherlv_6, grammarAccess.getPrimitiveDataTypeAccess().getRightCurlyBracketKeyword_6());
                 
@@ -2607,7 +2375,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleInnerDeclaration"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1067:1: entryRuleInnerDeclaration returns [EObject current=null] : iv_ruleInnerDeclaration= ruleInnerDeclaration EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:967:1: entryRuleInnerDeclaration returns [EObject current=null] : iv_ruleInnerDeclaration= ruleInnerDeclaration EOF ;
     public final EObject entryRuleInnerDeclaration() throws RecognitionException {
         EObject current = null;
 
@@ -2615,17 +2383,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1068:2: (iv_ruleInnerDeclaration= ruleInnerDeclaration EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1069:2: iv_ruleInnerDeclaration= ruleInnerDeclaration EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:968:2: (iv_ruleInnerDeclaration= ruleInnerDeclaration EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:969:2: iv_ruleInnerDeclaration= ruleInnerDeclaration EOF
             {
              newCompositeNode(grammarAccess.getInnerDeclarationRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_entryRuleInnerDeclaration2337);
+            pushFollow(FollowSets000.FOLLOW_ruleInnerDeclaration_in_entryRuleInnerDeclaration2127);
             iv_ruleInnerDeclaration=ruleInnerDeclaration();
 
             state._fsp--;
 
              current =iv_ruleInnerDeclaration; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleInnerDeclaration2347); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleInnerDeclaration2137); 
 
             }
 
@@ -2643,7 +2411,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleInnerDeclaration"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1076:1: ruleInnerDeclaration returns [EObject current=null] : (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:976:1: ruleInnerDeclaration returns [EObject current=null] : (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' ) ;
     public final EObject ruleInnerDeclaration() throws RecognitionException {
         EObject current = null;
 
@@ -2657,26 +2425,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1079:28: ( (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1080:1: (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:979:28: ( (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:980:1: (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1080:1: (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1080:3: otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:980:1: (otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:980:3: otherlv_0= 'InnerDeclaration' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'dataType' ( ( ruleEString ) ) otherlv_5= '}'
             {
-            otherlv_0=(Token)match(input,35,FollowSets000.FOLLOW_35_in_ruleInnerDeclaration2384); 
+            otherlv_0=(Token)match(input,32,FollowSets000.FOLLOW_32_in_ruleInnerDeclaration2174); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getInnerDeclarationAccess().getInnerDeclarationKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1084:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1085:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:984:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:985:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1085:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1086:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:985:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:986:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getInnerDeclarationAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInnerDeclaration2405);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInnerDeclaration2195);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -2698,19 +2466,19 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleInnerDeclaration2417); 
+            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleInnerDeclaration2207); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getInnerDeclarationAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_3=(Token)match(input,36,FollowSets000.FOLLOW_36_in_ruleInnerDeclaration2429); 
+            otherlv_3=(Token)match(input,33,FollowSets000.FOLLOW_33_in_ruleInnerDeclaration2219); 
 
                 	newLeafNode(otherlv_3, grammarAccess.getInnerDeclarationAccess().getDataTypeKeyword_3());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1110:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1111:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1010:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1011:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1111:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1112:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1011:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1012:3: ruleEString
             {
 
             			if (current==null) {
@@ -2720,7 +2488,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getInnerDeclarationAccess().getDataTypeDataTypeCrossReference_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInnerDeclaration2452);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleInnerDeclaration2242);
             ruleEString();
 
             state._fsp--;
@@ -2734,7 +2502,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleInnerDeclaration2464); 
+            otherlv_5=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleInnerDeclaration2254); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getInnerDeclarationAccess().getRightCurlyBracketKeyword_5());
                 
@@ -2759,7 +2527,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleSignature"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1137:1: entryRuleSignature returns [EObject current=null] : iv_ruleSignature= ruleSignature EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1037:1: entryRuleSignature returns [EObject current=null] : iv_ruleSignature= ruleSignature EOF ;
     public final EObject entryRuleSignature() throws RecognitionException {
         EObject current = null;
 
@@ -2767,17 +2535,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1138:2: (iv_ruleSignature= ruleSignature EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1139:2: iv_ruleSignature= ruleSignature EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1038:2: (iv_ruleSignature= ruleSignature EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1039:2: iv_ruleSignature= ruleSignature EOF
             {
              newCompositeNode(grammarAccess.getSignatureRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSignature_in_entryRuleSignature2500);
+            pushFollow(FollowSets000.FOLLOW_ruleSignature_in_entryRuleSignature2290);
             iv_ruleSignature=ruleSignature();
 
             state._fsp--;
 
              current =iv_ruleSignature; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSignature2510); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSignature2300); 
 
             }
 
@@ -2795,7 +2563,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleSignature"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1146:1: ruleSignature returns [EObject current=null] : ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1046:1: ruleSignature returns [EObject current=null] : ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' ) ;
     public final EObject ruleSignature() throws RecognitionException {
         EObject current = null;
 
@@ -2813,37 +2581,37 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1149:28: ( ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1150:1: ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1049:28: ( ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1050:1: ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1150:1: ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1150:2: ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1050:1: ( ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1050:2: ( ( ( ruleEString ) ) | otherlv_1= 'void' ) ( (lv_name_2_0= ruleEString ) ) otherlv_3= '(' ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )? otherlv_7= ')'
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1150:2: ( ( ( ruleEString ) ) | otherlv_1= 'void' )
-            int alt24=2;
-            int LA24_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1050:2: ( ( ( ruleEString ) ) | otherlv_1= 'void' )
+            int alt19=2;
+            int LA19_0 = input.LA(1);
 
-            if ( ((LA24_0>=RULE_STRING && LA24_0<=RULE_ID)) ) {
-                alt24=1;
+            if ( ((LA19_0>=RULE_STRING && LA19_0<=RULE_ID)) ) {
+                alt19=1;
             }
-            else if ( (LA24_0==37) ) {
-                alt24=2;
+            else if ( (LA19_0==34) ) {
+                alt19=2;
             }
             else {
                 NoViableAltException nvae =
-                    new NoViableAltException("", 24, 0, input);
+                    new NoViableAltException("", 19, 0, input);
 
                 throw nvae;
             }
-            switch (alt24) {
+            switch (alt19) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1150:3: ( ( ruleEString ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1050:3: ( ( ruleEString ) )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1150:3: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1151:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1050:3: ( ( ruleEString ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1051:1: ( ruleEString )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1151:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1152:3: ruleEString
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1051:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1052:3: ruleEString
                     {
 
                     			if (current==null) {
@@ -2853,7 +2621,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getSignatureAccess().getReturnTypeDataTypeCrossReference_0_0_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSignature2559);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSignature2349);
                     ruleEString();
 
                     state._fsp--;
@@ -2871,9 +2639,9 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1166:7: otherlv_1= 'void'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1066:7: otherlv_1= 'void'
                     {
-                    otherlv_1=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleSignature2577); 
+                    otherlv_1=(Token)match(input,34,FollowSets000.FOLLOW_34_in_ruleSignature2367); 
 
                         	newLeafNode(otherlv_1, grammarAccess.getSignatureAccess().getVoidKeyword_0_1());
                         
@@ -2883,16 +2651,16 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1170:2: ( (lv_name_2_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1171:1: (lv_name_2_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1070:2: ( (lv_name_2_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1071:1: (lv_name_2_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1171:1: (lv_name_2_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1172:3: lv_name_2_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1071:1: (lv_name_2_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1072:3: lv_name_2_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getSignatureAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSignature2599);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSignature2389);
             lv_name_2_0=ruleEString();
 
             state._fsp--;
@@ -2914,31 +2682,31 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_3=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleSignature2611); 
+            otherlv_3=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleSignature2401); 
 
                 	newLeafNode(otherlv_3, grammarAccess.getSignatureAccess().getLeftParenthesisKeyword_2());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1192:1: ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )?
-            int alt26=2;
-            int LA26_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1092:1: ( ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )* )?
+            int alt21=2;
+            int LA21_0 = input.LA(1);
 
-            if ( ((LA26_0>=RULE_STRING && LA26_0<=RULE_ID)) ) {
-                alt26=1;
+            if ( ((LA21_0>=RULE_STRING && LA21_0<=RULE_ID)) ) {
+                alt21=1;
             }
-            switch (alt26) {
+            switch (alt21) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1192:2: ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )*
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1092:2: ( (lv_parameters_4_0= ruleParameter ) ) (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )*
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1192:2: ( (lv_parameters_4_0= ruleParameter ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1193:1: (lv_parameters_4_0= ruleParameter )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1092:2: ( (lv_parameters_4_0= ruleParameter ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1093:1: (lv_parameters_4_0= ruleParameter )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1193:1: (lv_parameters_4_0= ruleParameter )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1194:3: lv_parameters_4_0= ruleParameter
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1093:1: (lv_parameters_4_0= ruleParameter )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1094:3: lv_parameters_4_0= ruleParameter
                     {
                      
                     	        newCompositeNode(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_0_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleSignature2633);
+                    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleSignature2423);
                     lv_parameters_4_0=ruleParameter();
 
                     state._fsp--;
@@ -2960,35 +2728,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1210:2: (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )*
-                    loop25:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1110:2: (otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) ) )*
+                    loop20:
                     do {
-                        int alt25=2;
-                        int LA25_0 = input.LA(1);
+                        int alt20=2;
+                        int LA20_0 = input.LA(1);
 
-                        if ( (LA25_0==14) ) {
-                            alt25=1;
+                        if ( (LA20_0==17) ) {
+                            alt20=1;
                         }
 
 
-                        switch (alt25) {
+                        switch (alt20) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1210:4: otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1110:4: otherlv_5= ',' ( (lv_parameters_6_0= ruleParameter ) )
                     	    {
-                    	    otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSignature2646); 
+                    	    otherlv_5=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSignature2436); 
 
                     	        	newLeafNode(otherlv_5, grammarAccess.getSignatureAccess().getCommaKeyword_3_1_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1214:1: ( (lv_parameters_6_0= ruleParameter ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1215:1: (lv_parameters_6_0= ruleParameter )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1114:1: ( (lv_parameters_6_0= ruleParameter ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1115:1: (lv_parameters_6_0= ruleParameter )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1215:1: (lv_parameters_6_0= ruleParameter )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1216:3: lv_parameters_6_0= ruleParameter
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1115:1: (lv_parameters_6_0= ruleParameter )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1116:3: lv_parameters_6_0= ruleParameter
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getSignatureAccess().getParametersParameterParserRuleCall_3_1_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleSignature2667);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleParameter_in_ruleSignature2457);
                     	    lv_parameters_6_0=ruleParameter();
 
                     	    state._fsp--;
@@ -3015,7 +2783,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop25;
+                    	    break loop20;
                         }
                     } while (true);
 
@@ -3025,7 +2793,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleSignature2683); 
+            otherlv_7=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleSignature2473); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getSignatureAccess().getRightParenthesisKeyword_4());
                 
@@ -3050,7 +2818,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleParameter"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1244:1: entryRuleParameter returns [EObject current=null] : iv_ruleParameter= ruleParameter EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1144:1: entryRuleParameter returns [EObject current=null] : iv_ruleParameter= ruleParameter EOF ;
     public final EObject entryRuleParameter() throws RecognitionException {
         EObject current = null;
 
@@ -3058,17 +2826,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1245:2: (iv_ruleParameter= ruleParameter EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1246:2: iv_ruleParameter= ruleParameter EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1145:2: (iv_ruleParameter= ruleParameter EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1146:2: iv_ruleParameter= ruleParameter EOF
             {
              newCompositeNode(grammarAccess.getParameterRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_entryRuleParameter2719);
+            pushFollow(FollowSets000.FOLLOW_ruleParameter_in_entryRuleParameter2509);
             iv_ruleParameter=ruleParameter();
 
             state._fsp--;
 
              current =iv_ruleParameter; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleParameter2729); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleParameter2519); 
 
             }
 
@@ -3086,7 +2854,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleParameter"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1253:1: ruleParameter returns [EObject current=null] : ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1153:1: ruleParameter returns [EObject current=null] : ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) ) ;
     public final EObject ruleParameter() throws RecognitionException {
         EObject current = null;
 
@@ -3096,17 +2864,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1256:28: ( ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1257:1: ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1156:28: ( ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1157:1: ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1257:1: ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1257:2: ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1157:1: ( ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1157:2: ( ( ruleEString ) ) ( (lv_name_1_0= ruleEString ) )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1257:2: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1258:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1157:2: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1158:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1258:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1259:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1158:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1159:3: ruleEString
             {
 
             			if (current==null) {
@@ -3116,7 +2884,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getParameterAccess().getDataTypeDataTypeCrossReference_0_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2777);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2567);
             ruleEString();
 
             state._fsp--;
@@ -3130,16 +2898,16 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1272:2: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1273:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1172:2: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1173:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1273:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1274:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1173:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1174:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getParameterAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2798);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleParameter2588);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -3182,7 +2950,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleProvidedRole"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1298:1: entryRuleProvidedRole returns [EObject current=null] : iv_ruleProvidedRole= ruleProvidedRole EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1198:1: entryRuleProvidedRole returns [EObject current=null] : iv_ruleProvidedRole= ruleProvidedRole EOF ;
     public final EObject entryRuleProvidedRole() throws RecognitionException {
         EObject current = null;
 
@@ -3190,17 +2958,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1299:2: (iv_ruleProvidedRole= ruleProvidedRole EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1300:2: iv_ruleProvidedRole= ruleProvidedRole EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1199:2: (iv_ruleProvidedRole= ruleProvidedRole EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1200:2: iv_ruleProvidedRole= ruleProvidedRole EOF
             {
              newCompositeNode(grammarAccess.getProvidedRoleRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_entryRuleProvidedRole2834);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_entryRuleProvidedRole2624);
             iv_ruleProvidedRole=ruleProvidedRole();
 
             state._fsp--;
 
              current =iv_ruleProvidedRole; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleProvidedRole2844); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleProvidedRole2634); 
 
             }
 
@@ -3218,7 +2986,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleProvidedRole"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1307:1: ruleProvidedRole returns [EObject current=null] : ( () otherlv_1= 'provides' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1207:1: ruleProvidedRole returns [EObject current=null] : ( () otherlv_1= 'ProvidedRole' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* ) ;
     public final EObject ruleProvidedRole() throws RecognitionException {
         EObject current = null;
 
@@ -3228,14 +2996,14 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1310:28: ( ( () otherlv_1= 'provides' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1311:1: ( () otherlv_1= 'provides' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1210:28: ( ( () otherlv_1= 'ProvidedRole' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1211:1: ( () otherlv_1= 'ProvidedRole' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1311:1: ( () otherlv_1= 'provides' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1311:2: () otherlv_1= 'provides' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )*
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1211:1: ( () otherlv_1= 'ProvidedRole' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1211:2: () otherlv_1= 'ProvidedRole' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )*
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1311:2: ()
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1312:5: 
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1211:2: ()
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1212:5: 
             {
 
                     current = forceCreateModelElement(
@@ -3245,30 +3013,30 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_1=(Token)match(input,38,FollowSets000.FOLLOW_38_in_ruleProvidedRole2890); 
+            otherlv_1=(Token)match(input,35,FollowSets000.FOLLOW_35_in_ruleProvidedRole2680); 
 
-                	newLeafNode(otherlv_1, grammarAccess.getProvidedRoleAccess().getProvidesKeyword_1());
+                	newLeafNode(otherlv_1, grammarAccess.getProvidedRoleAccess().getProvidedRoleKeyword_1());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1321:1: ( ( ( ruleEString ) ) (otherlv_3= ',' )? )*
-            loop28:
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1221:1: ( ( ( ruleEString ) ) (otherlv_3= ',' )? )*
+            loop23:
             do {
-                int alt28=2;
-                int LA28_0 = input.LA(1);
+                int alt23=2;
+                int LA23_0 = input.LA(1);
 
-                if ( ((LA28_0>=RULE_STRING && LA28_0<=RULE_ID)) ) {
-                    alt28=1;
+                if ( ((LA23_0>=RULE_STRING && LA23_0<=RULE_ID)) ) {
+                    alt23=1;
                 }
 
 
-                switch (alt28) {
+                switch (alt23) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1321:2: ( ( ruleEString ) ) (otherlv_3= ',' )?
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1221:2: ( ( ruleEString ) ) (otherlv_3= ',' )?
             	    {
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1321:2: ( ( ruleEString ) )
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1322:1: ( ruleEString )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1221:2: ( ( ruleEString ) )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1222:1: ( ruleEString )
             	    {
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1322:1: ( ruleEString )
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1323:3: ruleEString
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1222:1: ( ruleEString )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1223:3: ruleEString
             	    {
 
             	    			if (current==null) {
@@ -3278,7 +3046,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getProvidedRoleAccess().getInterfaceInterfaceCrossReference_2_0_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedRole2914);
+            	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedRole2704);
             	    ruleEString();
 
             	    state._fsp--;
@@ -3292,22 +3060,22 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             	    }
 
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1336:2: (otherlv_3= ',' )?
-            	    int alt27=2;
-            	    int LA27_0 = input.LA(1);
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1236:2: (otherlv_3= ',' )?
+            	    int alt22=2;
+            	    int LA22_0 = input.LA(1);
 
-            	    if ( (LA27_0==14) ) {
-            	        int LA27_1 = input.LA(2);
+            	    if ( (LA22_0==17) ) {
+            	        int LA22_1 = input.LA(2);
 
-            	        if ( (LA27_1==EOF||(LA27_1>=RULE_STRING && LA27_1<=RULE_ID)||LA27_1==12||(LA27_1>=14 && LA27_1<=15)||LA27_1==39) ) {
-            	            alt27=1;
+            	        if ( (LA22_1==EOF||(LA22_1>=RULE_STRING && LA22_1<=RULE_ID)||(LA22_1>=12 && LA22_1<=13)||LA22_1==17||LA22_1==36) ) {
+            	            alt22=1;
             	        }
             	    }
-            	    switch (alt27) {
+            	    switch (alt22) {
             	        case 1 :
-            	            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1336:4: otherlv_3= ','
+            	            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1236:4: otherlv_3= ','
             	            {
-            	            otherlv_3=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleProvidedRole2927); 
+            	            otherlv_3=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleProvidedRole2717); 
 
             	                	newLeafNode(otherlv_3, grammarAccess.getProvidedRoleAccess().getCommaKeyword_2_1());
             	                
@@ -3322,7 +3090,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
             	    break;
 
             	default :
-            	    break loop28;
+            	    break loop23;
                 }
             } while (true);
 
@@ -3347,7 +3115,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleRequiredRole"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1348:1: entryRuleRequiredRole returns [EObject current=null] : iv_ruleRequiredRole= ruleRequiredRole EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1248:1: entryRuleRequiredRole returns [EObject current=null] : iv_ruleRequiredRole= ruleRequiredRole EOF ;
     public final EObject entryRuleRequiredRole() throws RecognitionException {
         EObject current = null;
 
@@ -3355,17 +3123,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1349:2: (iv_ruleRequiredRole= ruleRequiredRole EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1350:2: iv_ruleRequiredRole= ruleRequiredRole EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1249:2: (iv_ruleRequiredRole= ruleRequiredRole EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1250:2: iv_ruleRequiredRole= ruleRequiredRole EOF
             {
              newCompositeNode(grammarAccess.getRequiredRoleRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_entryRuleRequiredRole2967);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_entryRuleRequiredRole2757);
             iv_ruleRequiredRole=ruleRequiredRole();
 
             state._fsp--;
 
              current =iv_ruleRequiredRole; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRequiredRole2977); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRequiredRole2767); 
 
             }
 
@@ -3383,7 +3151,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleRequiredRole"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1357:1: ruleRequiredRole returns [EObject current=null] : ( () otherlv_1= 'requires' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1257:1: ruleRequiredRole returns [EObject current=null] : ( () otherlv_1= 'RequiredRole' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* ) ;
     public final EObject ruleRequiredRole() throws RecognitionException {
         EObject current = null;
 
@@ -3393,14 +3161,14 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1360:28: ( ( () otherlv_1= 'requires' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1361:1: ( () otherlv_1= 'requires' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1260:28: ( ( () otherlv_1= 'RequiredRole' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1261:1: ( () otherlv_1= 'RequiredRole' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1361:1: ( () otherlv_1= 'requires' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1361:2: () otherlv_1= 'requires' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )*
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1261:1: ( () otherlv_1= 'RequiredRole' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )* )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1261:2: () otherlv_1= 'RequiredRole' ( ( ( ruleEString ) ) (otherlv_3= ',' )? )*
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1361:2: ()
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1362:5: 
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1261:2: ()
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1262:5: 
             {
 
                     current = forceCreateModelElement(
@@ -3410,30 +3178,30 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_1=(Token)match(input,39,FollowSets000.FOLLOW_39_in_ruleRequiredRole3023); 
+            otherlv_1=(Token)match(input,36,FollowSets000.FOLLOW_36_in_ruleRequiredRole2813); 
 
-                	newLeafNode(otherlv_1, grammarAccess.getRequiredRoleAccess().getRequiresKeyword_1());
+                	newLeafNode(otherlv_1, grammarAccess.getRequiredRoleAccess().getRequiredRoleKeyword_1());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1371:1: ( ( ( ruleEString ) ) (otherlv_3= ',' )? )*
-            loop30:
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1271:1: ( ( ( ruleEString ) ) (otherlv_3= ',' )? )*
+            loop25:
             do {
-                int alt30=2;
-                int LA30_0 = input.LA(1);
+                int alt25=2;
+                int LA25_0 = input.LA(1);
 
-                if ( ((LA30_0>=RULE_STRING && LA30_0<=RULE_ID)) ) {
-                    alt30=1;
+                if ( ((LA25_0>=RULE_STRING && LA25_0<=RULE_ID)) ) {
+                    alt25=1;
                 }
 
 
-                switch (alt30) {
+                switch (alt25) {
             	case 1 :
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1371:2: ( ( ruleEString ) ) (otherlv_3= ',' )?
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1271:2: ( ( ruleEString ) ) (otherlv_3= ',' )?
             	    {
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1371:2: ( ( ruleEString ) )
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1372:1: ( ruleEString )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1271:2: ( ( ruleEString ) )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1272:1: ( ruleEString )
             	    {
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1372:1: ( ruleEString )
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1373:3: ruleEString
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1272:1: ( ruleEString )
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1273:3: ruleEString
             	    {
 
             	    			if (current==null) {
@@ -3443,7 +3211,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
             	     
             	    	        newCompositeNode(grammarAccess.getRequiredRoleAccess().getInterfaceInterfaceCrossReference_2_0_0()); 
             	    	    
-            	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredRole3047);
+            	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredRole2837);
             	    ruleEString();
 
             	    state._fsp--;
@@ -3457,22 +3225,22 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             	    }
 
-            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1386:2: (otherlv_3= ',' )?
-            	    int alt29=2;
-            	    int LA29_0 = input.LA(1);
+            	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1286:2: (otherlv_3= ',' )?
+            	    int alt24=2;
+            	    int LA24_0 = input.LA(1);
 
-            	    if ( (LA29_0==14) ) {
-            	        int LA29_1 = input.LA(2);
+            	    if ( (LA24_0==17) ) {
+            	        int LA24_1 = input.LA(2);
 
-            	        if ( (LA29_1==EOF||(LA29_1>=RULE_STRING && LA29_1<=RULE_ID)||LA29_1==12||(LA29_1>=14 && LA29_1<=15)) ) {
-            	            alt29=1;
+            	        if ( (LA24_1==EOF||(LA24_1>=RULE_STRING && LA24_1<=RULE_ID)||(LA24_1>=12 && LA24_1<=13)||LA24_1==17) ) {
+            	            alt24=1;
             	        }
             	    }
-            	    switch (alt29) {
+            	    switch (alt24) {
             	        case 1 :
-            	            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1386:4: otherlv_3= ','
+            	            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1286:4: otherlv_3= ','
             	            {
-            	            otherlv_3=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleRequiredRole3060); 
+            	            otherlv_3=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleRequiredRole2850); 
 
             	                	newLeafNode(otherlv_3, grammarAccess.getRequiredRoleAccess().getCommaKeyword_2_1());
             	                
@@ -3487,7 +3255,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
             	    break;
 
             	default :
-            	    break loop30;
+            	    break loop25;
                 }
             } while (true);
 
@@ -3512,7 +3280,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleBasicComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1398:1: entryRuleBasicComponent returns [EObject current=null] : iv_ruleBasicComponent= ruleBasicComponent EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1298:1: entryRuleBasicComponent returns [EObject current=null] : iv_ruleBasicComponent= ruleBasicComponent EOF ;
     public final EObject entryRuleBasicComponent() throws RecognitionException {
         EObject current = null;
 
@@ -3520,17 +3288,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1399:2: (iv_ruleBasicComponent= ruleBasicComponent EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1400:2: iv_ruleBasicComponent= ruleBasicComponent EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1299:2: (iv_ruleBasicComponent= ruleBasicComponent EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1300:2: iv_ruleBasicComponent= ruleBasicComponent EOF
             {
              newCompositeNode(grammarAccess.getBasicComponentRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleBasicComponent_in_entryRuleBasicComponent3100);
+            pushFollow(FollowSets000.FOLLOW_ruleBasicComponent_in_entryRuleBasicComponent2890);
             iv_ruleBasicComponent=ruleBasicComponent();
 
             state._fsp--;
 
              current =iv_ruleBasicComponent; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleBasicComponent3110); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleBasicComponent2900); 
 
             }
 
@@ -3548,7 +3316,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleBasicComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1407:1: ruleBasicComponent returns [EObject current=null] : (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1307:1: ruleBasicComponent returns [EObject current=null] : (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' ) ;
     public final EObject ruleBasicComponent() throws RecognitionException {
         EObject current = null;
 
@@ -3575,26 +3343,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1410:28: ( (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1411:1: (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1310:28: ( (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1311:1: (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1411:1: (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1411:3: otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1311:1: (otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1311:3: otherlv_0= 'BasicComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? otherlv_15= '}'
             {
-            otherlv_0=(Token)match(input,40,FollowSets000.FOLLOW_40_in_ruleBasicComponent3147); 
+            otherlv_0=(Token)match(input,37,FollowSets000.FOLLOW_37_in_ruleBasicComponent2937); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getBasicComponentAccess().getBasicComponentKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1415:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1416:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1315:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1316:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1416:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1417:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1316:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1317:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getBasicComponentAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBasicComponent3168);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBasicComponent2958);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -3616,27 +3384,27 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1433:2: ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )?
-            int alt32=2;
-            int LA32_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1333:2: ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )?
+            int alt27=2;
+            int LA27_0 = input.LA(1);
 
-            if ( (LA32_0==38) ) {
-                alt32=1;
+            if ( (LA27_0==35) ) {
+                alt27=1;
             }
-            switch (alt32) {
+            switch (alt27) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1433:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1333:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1433:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1434:1: (lv_providedRoles_2_0= ruleProvidedRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1333:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1334:1: (lv_providedRoles_2_0= ruleProvidedRole )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1434:1: (lv_providedRoles_2_0= ruleProvidedRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1435:3: lv_providedRoles_2_0= ruleProvidedRole
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1334:1: (lv_providedRoles_2_0= ruleProvidedRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1335:3: lv_providedRoles_2_0= ruleProvidedRole
                     {
                      
                     	        newCompositeNode(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleBasicComponent3190);
+                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleBasicComponent2980);
                     lv_providedRoles_2_0=ruleProvidedRole();
 
                     state._fsp--;
@@ -3658,35 +3426,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1451:2: (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
-                    loop31:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1351:2: (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
+                    loop26:
                     do {
-                        int alt31=2;
-                        int LA31_0 = input.LA(1);
+                        int alt26=2;
+                        int LA26_0 = input.LA(1);
 
-                        if ( (LA31_0==14) ) {
-                            alt31=1;
+                        if ( (LA26_0==17) ) {
+                            alt26=1;
                         }
 
 
-                        switch (alt31) {
+                        switch (alt26) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1451:4: otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1351:4: otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) )
                     	    {
-                    	    otherlv_3=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleBasicComponent3203); 
+                    	    otherlv_3=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleBasicComponent2993); 
 
                     	        	newLeafNode(otherlv_3, grammarAccess.getBasicComponentAccess().getCommaKeyword_2_1_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1455:1: ( (lv_providedRoles_4_0= ruleProvidedRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1456:1: (lv_providedRoles_4_0= ruleProvidedRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1355:1: ( (lv_providedRoles_4_0= ruleProvidedRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1356:1: (lv_providedRoles_4_0= ruleProvidedRole )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1456:1: (lv_providedRoles_4_0= ruleProvidedRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1457:3: lv_providedRoles_4_0= ruleProvidedRole
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1356:1: (lv_providedRoles_4_0= ruleProvidedRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1357:3: lv_providedRoles_4_0= ruleProvidedRole
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getBasicComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleBasicComponent3224);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleBasicComponent3014);
                     	    lv_providedRoles_4_0=ruleProvidedRole();
 
                     	    state._fsp--;
@@ -3713,7 +3481,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop31;
+                    	    break loop26;
                         }
                     } while (true);
 
@@ -3723,27 +3491,27 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1473:6: ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )?
-            int alt34=2;
-            int LA34_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1373:6: ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )?
+            int alt29=2;
+            int LA29_0 = input.LA(1);
 
-            if ( (LA34_0==39) ) {
-                alt34=1;
+            if ( (LA29_0==36) ) {
+                alt29=1;
             }
-            switch (alt34) {
+            switch (alt29) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1473:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1373:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1473:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1474:1: (lv_requiredRoles_5_0= ruleRequiredRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1373:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1374:1: (lv_requiredRoles_5_0= ruleRequiredRole )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1474:1: (lv_requiredRoles_5_0= ruleRequiredRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1475:3: lv_requiredRoles_5_0= ruleRequiredRole
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1374:1: (lv_requiredRoles_5_0= ruleRequiredRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1375:3: lv_requiredRoles_5_0= ruleRequiredRole
                     {
                      
                     	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleBasicComponent3250);
+                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleBasicComponent3040);
                     lv_requiredRoles_5_0=ruleRequiredRole();
 
                     state._fsp--;
@@ -3765,35 +3533,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1491:2: (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
-                    loop33:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1391:2: (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
+                    loop28:
                     do {
-                        int alt33=2;
-                        int LA33_0 = input.LA(1);
+                        int alt28=2;
+                        int LA28_0 = input.LA(1);
 
-                        if ( (LA33_0==14) ) {
-                            alt33=1;
+                        if ( (LA28_0==17) ) {
+                            alt28=1;
                         }
 
 
-                        switch (alt33) {
+                        switch (alt28) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1491:4: otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1391:4: otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
                     	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleBasicComponent3263); 
+                    	    otherlv_6=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleBasicComponent3053); 
 
                     	        	newLeafNode(otherlv_6, grammarAccess.getBasicComponentAccess().getCommaKeyword_3_1_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1495:1: ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1496:1: (lv_requiredRoles_7_0= ruleRequiredRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1395:1: ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1396:1: (lv_requiredRoles_7_0= ruleRequiredRole )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1496:1: (lv_requiredRoles_7_0= ruleRequiredRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1497:3: lv_requiredRoles_7_0= ruleRequiredRole
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1396:1: (lv_requiredRoles_7_0= ruleRequiredRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1397:3: lv_requiredRoles_7_0= ruleRequiredRole
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleBasicComponent3284);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleBasicComponent3074);
                     	    lv_requiredRoles_7_0=ruleRequiredRole();
 
                     	    state._fsp--;
@@ -3820,7 +3588,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop33;
+                    	    break loop28;
                         }
                     } while (true);
 
@@ -3830,34 +3598,34 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_8=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleBasicComponent3300); 
+            otherlv_8=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleBasicComponent3090); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getBasicComponentAccess().getLeftCurlyBracketKeyword_4());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1517:1: (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )?
-            int alt36=2;
-            int LA36_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1417:1: (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )?
+            int alt31=2;
+            int LA31_0 = input.LA(1);
 
-            if ( (LA36_0==24) ) {
-                alt36=1;
+            if ( (LA31_0==21) ) {
+                alt31=1;
             }
-            switch (alt36) {
+            switch (alt31) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1517:3: otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1417:3: otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')'
                     {
-                    otherlv_9=(Token)match(input,24,FollowSets000.FOLLOW_24_in_ruleBasicComponent3313); 
+                    otherlv_9=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleBasicComponent3103); 
 
                         	newLeafNode(otherlv_9, grammarAccess.getBasicComponentAccess().getRelationshipKeyword_5_0());
                         
-                    otherlv_10=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleBasicComponent3325); 
+                    otherlv_10=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleBasicComponent3115); 
 
                         	newLeafNode(otherlv_10, grammarAccess.getBasicComponentAccess().getLeftParenthesisKeyword_5_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1525:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1526:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1425:1: ( ( ruleEString ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1426:1: ( ruleEString )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1526:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1527:3: ruleEString
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1426:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1427:3: ruleEString
                     {
 
                     			if (current==null) {
@@ -3867,7 +3635,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBasicComponent3348);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBasicComponent3138);
                     ruleEString();
 
                     state._fsp--;
@@ -3881,30 +3649,30 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1540:2: (otherlv_12= ',' ( ( ruleEString ) ) )*
-                    loop35:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1440:2: (otherlv_12= ',' ( ( ruleEString ) ) )*
+                    loop30:
                     do {
-                        int alt35=2;
-                        int LA35_0 = input.LA(1);
+                        int alt30=2;
+                        int LA30_0 = input.LA(1);
 
-                        if ( (LA35_0==14) ) {
-                            alt35=1;
+                        if ( (LA30_0==17) ) {
+                            alt30=1;
                         }
 
 
-                        switch (alt35) {
+                        switch (alt30) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1540:4: otherlv_12= ',' ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1440:4: otherlv_12= ',' ( ( ruleEString ) )
                     	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleBasicComponent3361); 
+                    	    otherlv_12=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleBasicComponent3151); 
 
                     	        	newLeafNode(otherlv_12, grammarAccess.getBasicComponentAccess().getCommaKeyword_5_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1544:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1545:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1444:1: ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1445:1: ( ruleEString )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1545:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1546:3: ruleEString
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1445:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1446:3: ruleEString
                     	    {
 
                     	    			if (current==null) {
@@ -3914,7 +3682,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getBasicComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBasicComponent3384);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleBasicComponent3174);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -3933,11 +3701,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop35;
+                    	    break loop30;
                         }
                     } while (true);
 
-                    otherlv_14=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleBasicComponent3398); 
+                    otherlv_14=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleBasicComponent3188); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getBasicComponentAccess().getRightParenthesisKeyword_5_4());
                         
@@ -3947,7 +3715,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_15=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleBasicComponent3412); 
+            otherlv_15=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleBasicComponent3202); 
 
                 	newLeafNode(otherlv_15, grammarAccess.getBasicComponentAccess().getRightCurlyBracketKeyword_6());
                 
@@ -3972,7 +3740,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleCompositeComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1575:1: entryRuleCompositeComponent returns [EObject current=null] : iv_ruleCompositeComponent= ruleCompositeComponent EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1475:1: entryRuleCompositeComponent returns [EObject current=null] : iv_ruleCompositeComponent= ruleCompositeComponent EOF ;
     public final EObject entryRuleCompositeComponent() throws RecognitionException {
         EObject current = null;
 
@@ -3980,17 +3748,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1576:2: (iv_ruleCompositeComponent= ruleCompositeComponent EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1577:2: iv_ruleCompositeComponent= ruleCompositeComponent EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1476:2: (iv_ruleCompositeComponent= ruleCompositeComponent EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1477:2: iv_ruleCompositeComponent= ruleCompositeComponent EOF
             {
              newCompositeNode(grammarAccess.getCompositeComponentRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleCompositeComponent_in_entryRuleCompositeComponent3448);
+            pushFollow(FollowSets000.FOLLOW_ruleCompositeComponent_in_entryRuleCompositeComponent3238);
             iv_ruleCompositeComponent=ruleCompositeComponent();
 
             state._fsp--;
 
              current =iv_ruleCompositeComponent; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCompositeComponent3458); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleCompositeComponent3248); 
 
             }
 
@@ -4008,7 +3776,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleCompositeComponent"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1584:1: ruleCompositeComponent returns [EObject current=null] : (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1484:1: ruleCompositeComponent returns [EObject current=null] : (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' ) ;
     public final EObject ruleCompositeComponent() throws RecognitionException {
         EObject current = null;
 
@@ -4038,26 +3806,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1587:28: ( (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1588:1: (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1487:28: ( (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1488:1: (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1588:1: (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1588:3: otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1488:1: (otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1488:3: otherlv_0= 'CompositeComponent' ( (lv_name_1_0= ruleEString ) ) ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )? ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )? otherlv_8= '{' (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )? (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )? otherlv_17= '}'
             {
-            otherlv_0=(Token)match(input,41,FollowSets000.FOLLOW_41_in_ruleCompositeComponent3495); 
+            otherlv_0=(Token)match(input,38,FollowSets000.FOLLOW_38_in_ruleCompositeComponent3285); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getCompositeComponentAccess().getCompositeComponentKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1592:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1593:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1492:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1493:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1593:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1594:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1493:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1494:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeComponent3516);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeComponent3306);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -4079,27 +3847,27 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1610:2: ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )?
-            int alt38=2;
-            int LA38_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1510:2: ( ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )* )?
+            int alt33=2;
+            int LA33_0 = input.LA(1);
 
-            if ( (LA38_0==38) ) {
-                alt38=1;
+            if ( (LA33_0==35) ) {
+                alt33=1;
             }
-            switch (alt38) {
+            switch (alt33) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1610:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1510:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) ) (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1610:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1611:1: (lv_providedRoles_2_0= ruleProvidedRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1510:3: ( (lv_providedRoles_2_0= ruleProvidedRole ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1511:1: (lv_providedRoles_2_0= ruleProvidedRole )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1611:1: (lv_providedRoles_2_0= ruleProvidedRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1612:3: lv_providedRoles_2_0= ruleProvidedRole
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1511:1: (lv_providedRoles_2_0= ruleProvidedRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1512:3: lv_providedRoles_2_0= ruleProvidedRole
                     {
                      
                     	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_0_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3538);
+                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3328);
                     lv_providedRoles_2_0=ruleProvidedRole();
 
                     state._fsp--;
@@ -4121,35 +3889,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1628:2: (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
-                    loop37:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1528:2: (otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) )*
+                    loop32:
                     do {
-                        int alt37=2;
-                        int LA37_0 = input.LA(1);
+                        int alt32=2;
+                        int LA32_0 = input.LA(1);
 
-                        if ( (LA37_0==14) ) {
-                            alt37=1;
+                        if ( (LA32_0==17) ) {
+                            alt32=1;
                         }
 
 
-                        switch (alt37) {
+                        switch (alt32) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1628:4: otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1528:4: otherlv_3= ',' ( (lv_providedRoles_4_0= ruleProvidedRole ) )
                     	    {
-                    	    otherlv_3=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleCompositeComponent3551); 
+                    	    otherlv_3=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleCompositeComponent3341); 
 
                     	        	newLeafNode(otherlv_3, grammarAccess.getCompositeComponentAccess().getCommaKeyword_2_1_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1632:1: ( (lv_providedRoles_4_0= ruleProvidedRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1633:1: (lv_providedRoles_4_0= ruleProvidedRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1532:1: ( (lv_providedRoles_4_0= ruleProvidedRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1533:1: (lv_providedRoles_4_0= ruleProvidedRole )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1633:1: (lv_providedRoles_4_0= ruleProvidedRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1634:3: lv_providedRoles_4_0= ruleProvidedRole
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1533:1: (lv_providedRoles_4_0= ruleProvidedRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1534:3: lv_providedRoles_4_0= ruleProvidedRole
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getProvidedRolesProvidedRoleParserRuleCall_2_1_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3572);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3362);
                     	    lv_providedRoles_4_0=ruleProvidedRole();
 
                     	    state._fsp--;
@@ -4176,7 +3944,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop37;
+                    	    break loop32;
                         }
                     } while (true);
 
@@ -4186,27 +3954,27 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1650:6: ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )?
-            int alt40=2;
-            int LA40_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1550:6: ( ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )* )?
+            int alt35=2;
+            int LA35_0 = input.LA(1);
 
-            if ( (LA40_0==39) ) {
-                alt40=1;
+            if ( (LA35_0==36) ) {
+                alt35=1;
             }
-            switch (alt40) {
+            switch (alt35) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1650:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1550:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) ) (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1650:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1651:1: (lv_requiredRoles_5_0= ruleRequiredRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1550:7: ( (lv_requiredRoles_5_0= ruleRequiredRole ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1551:1: (lv_requiredRoles_5_0= ruleRequiredRole )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1651:1: (lv_requiredRoles_5_0= ruleRequiredRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1652:3: lv_requiredRoles_5_0= ruleRequiredRole
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1551:1: (lv_requiredRoles_5_0= ruleRequiredRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1552:3: lv_requiredRoles_5_0= ruleRequiredRole
                     {
                      
                     	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_0_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleCompositeComponent3598);
+                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleCompositeComponent3388);
                     lv_requiredRoles_5_0=ruleRequiredRole();
 
                     state._fsp--;
@@ -4228,35 +3996,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1668:2: (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
-                    loop39:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1568:2: (otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) ) )*
+                    loop34:
                     do {
-                        int alt39=2;
-                        int LA39_0 = input.LA(1);
+                        int alt34=2;
+                        int LA34_0 = input.LA(1);
 
-                        if ( (LA39_0==14) ) {
-                            alt39=1;
+                        if ( (LA34_0==17) ) {
+                            alt34=1;
                         }
 
 
-                        switch (alt39) {
+                        switch (alt34) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1668:4: otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1568:4: otherlv_6= ',' ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
                     	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleCompositeComponent3611); 
+                    	    otherlv_6=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleCompositeComponent3401); 
 
                     	        	newLeafNode(otherlv_6, grammarAccess.getCompositeComponentAccess().getCommaKeyword_3_1_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1672:1: ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1673:1: (lv_requiredRoles_7_0= ruleRequiredRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1572:1: ( (lv_requiredRoles_7_0= ruleRequiredRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1573:1: (lv_requiredRoles_7_0= ruleRequiredRole )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1673:1: (lv_requiredRoles_7_0= ruleRequiredRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1674:3: lv_requiredRoles_7_0= ruleRequiredRole
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1573:1: (lv_requiredRoles_7_0= ruleRequiredRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1574:3: lv_requiredRoles_7_0= ruleRequiredRole
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRequiredRolesRequiredRoleParserRuleCall_3_1_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleCompositeComponent3632);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleCompositeComponent3422);
                     	    lv_requiredRoles_7_0=ruleRequiredRole();
 
                     	    state._fsp--;
@@ -4283,7 +4051,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop39;
+                    	    break loop34;
                         }
                     } while (true);
 
@@ -4293,34 +4061,34 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_8=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCompositeComponent3648); 
+            otherlv_8=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleCompositeComponent3438); 
 
                 	newLeafNode(otherlv_8, grammarAccess.getCompositeComponentAccess().getLeftCurlyBracketKeyword_4());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1694:1: (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )?
-            int alt42=2;
-            int LA42_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1594:1: (otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')' )?
+            int alt37=2;
+            int LA37_0 = input.LA(1);
 
-            if ( (LA42_0==24) ) {
-                alt42=1;
+            if ( (LA37_0==21) ) {
+                alt37=1;
             }
-            switch (alt42) {
+            switch (alt37) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1694:3: otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1594:3: otherlv_9= 'relationship' otherlv_10= '(' ( ( ruleEString ) ) (otherlv_12= ',' ( ( ruleEString ) ) )* otherlv_14= ')'
                     {
-                    otherlv_9=(Token)match(input,24,FollowSets000.FOLLOW_24_in_ruleCompositeComponent3661); 
+                    otherlv_9=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleCompositeComponent3451); 
 
                         	newLeafNode(otherlv_9, grammarAccess.getCompositeComponentAccess().getRelationshipKeyword_5_0());
                         
-                    otherlv_10=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleCompositeComponent3673); 
+                    otherlv_10=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleCompositeComponent3463); 
 
                         	newLeafNode(otherlv_10, grammarAccess.getCompositeComponentAccess().getLeftParenthesisKeyword_5_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1702:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1703:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1602:1: ( ( ruleEString ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1603:1: ( ruleEString )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1703:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1704:3: ruleEString
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1603:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1604:3: ruleEString
                     {
 
                     			if (current==null) {
@@ -4330,7 +4098,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeComponent3696);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeComponent3486);
                     ruleEString();
 
                     state._fsp--;
@@ -4344,30 +4112,30 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1717:2: (otherlv_12= ',' ( ( ruleEString ) ) )*
-                    loop41:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1617:2: (otherlv_12= ',' ( ( ruleEString ) ) )*
+                    loop36:
                     do {
-                        int alt41=2;
-                        int LA41_0 = input.LA(1);
+                        int alt36=2;
+                        int LA36_0 = input.LA(1);
 
-                        if ( (LA41_0==14) ) {
-                            alt41=1;
+                        if ( (LA36_0==17) ) {
+                            alt36=1;
                         }
 
 
-                        switch (alt41) {
+                        switch (alt36) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1717:4: otherlv_12= ',' ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1617:4: otherlv_12= ',' ( ( ruleEString ) )
                     	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleCompositeComponent3709); 
+                    	    otherlv_12=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleCompositeComponent3499); 
 
                     	        	newLeafNode(otherlv_12, grammarAccess.getCompositeComponentAccess().getCommaKeyword_5_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1721:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1722:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1621:1: ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1622:1: ( ruleEString )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1722:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1723:3: ruleEString
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1622:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1623:3: ruleEString
                     	    {
 
                     	    			if (current==null) {
@@ -4377,7 +4145,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeComponent3732);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleCompositeComponent3522);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -4396,11 +4164,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop41;
+                    	    break loop36;
                         }
                     } while (true);
 
-                    otherlv_14=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleCompositeComponent3746); 
+                    otherlv_14=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleCompositeComponent3536); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getCompositeComponentAccess().getRightParenthesisKeyword_5_4());
                         
@@ -4410,31 +4178,31 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1740:3: (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )?
-            int alt43=2;
-            int LA43_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1640:3: (otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) ) )?
+            int alt38=2;
+            int LA38_0 = input.LA(1);
 
-            if ( (LA43_0==42) ) {
-                alt43=1;
+            if ( (LA38_0==39) ) {
+                alt38=1;
             }
-            switch (alt43) {
+            switch (alt38) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1740:5: otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1640:5: otherlv_15= 'assembly' ( (lv_assembly_16_0= ruleComposedStructureAssembly ) )
                     {
-                    otherlv_15=(Token)match(input,42,FollowSets000.FOLLOW_42_in_ruleCompositeComponent3761); 
+                    otherlv_15=(Token)match(input,39,FollowSets000.FOLLOW_39_in_ruleCompositeComponent3551); 
 
                         	newLeafNode(otherlv_15, grammarAccess.getCompositeComponentAccess().getAssemblyKeyword_6_0());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1744:1: ( (lv_assembly_16_0= ruleComposedStructureAssembly ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1745:1: (lv_assembly_16_0= ruleComposedStructureAssembly )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1644:1: ( (lv_assembly_16_0= ruleComposedStructureAssembly ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1645:1: (lv_assembly_16_0= ruleComposedStructureAssembly )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1745:1: (lv_assembly_16_0= ruleComposedStructureAssembly )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1746:3: lv_assembly_16_0= ruleComposedStructureAssembly
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1645:1: (lv_assembly_16_0= ruleComposedStructureAssembly )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1646:3: lv_assembly_16_0= ruleComposedStructureAssembly
                     {
                      
                     	        newCompositeNode(grammarAccess.getCompositeComponentAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_ruleCompositeComponent3782);
+                    pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_ruleCompositeComponent3572);
                     lv_assembly_16_0=ruleComposedStructureAssembly();
 
                     state._fsp--;
@@ -4462,7 +4230,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_17=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleCompositeComponent3796); 
+            otherlv_17=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleCompositeComponent3586); 
 
                 	newLeafNode(otherlv_17, grammarAccess.getCompositeComponentAccess().getRightCurlyBracketKeyword_7());
                 
@@ -4487,7 +4255,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleSubSystem"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1774:1: entryRuleSubSystem returns [EObject current=null] : iv_ruleSubSystem= ruleSubSystem EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1674:1: entryRuleSubSystem returns [EObject current=null] : iv_ruleSubSystem= ruleSubSystem EOF ;
     public final EObject entryRuleSubSystem() throws RecognitionException {
         EObject current = null;
 
@@ -4495,17 +4263,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1775:2: (iv_ruleSubSystem= ruleSubSystem EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1776:2: iv_ruleSubSystem= ruleSubSystem EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1675:2: (iv_ruleSubSystem= ruleSubSystem EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1676:2: iv_ruleSubSystem= ruleSubSystem EOF
             {
              newCompositeNode(grammarAccess.getSubSystemRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleSubSystem_in_entryRuleSubSystem3832);
+            pushFollow(FollowSets000.FOLLOW_ruleSubSystem_in_entryRuleSubSystem3622);
             iv_ruleSubSystem=ruleSubSystem();
 
             state._fsp--;
 
              current =iv_ruleSubSystem; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSubSystem3842); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleSubSystem3632); 
 
             }
 
@@ -4523,7 +4291,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleSubSystem"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1783:1: ruleSubSystem returns [EObject current=null] : (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1683:1: ruleSubSystem returns [EObject current=null] : (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' ) ;
     public final EObject ruleSubSystem() throws RecognitionException {
         EObject current = null;
 
@@ -4559,26 +4327,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1786:28: ( (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1787:1: (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1686:28: ( (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1687:1: (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1787:1: (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1787:3: otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1687:1: (otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1687:3: otherlv_0= 'SubSystem' ( (lv_name_1_0= ruleEString ) ) (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )? (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )? otherlv_14= '{' (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )? (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )? otherlv_23= '}'
             {
-            otherlv_0=(Token)match(input,43,FollowSets000.FOLLOW_43_in_ruleSubSystem3879); 
+            otherlv_0=(Token)match(input,40,FollowSets000.FOLLOW_40_in_ruleSubSystem3669); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getSubSystemAccess().getSubSystemKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1791:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1792:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1691:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1692:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1792:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1793:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1692:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1693:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getSubSystemAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSubSystem3900);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSubSystem3690);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -4600,35 +4368,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1809:2: (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )?
-            int alt45=2;
-            int LA45_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1709:2: (otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}' )?
+            int alt40=2;
+            int LA40_0 = input.LA(1);
 
-            if ( (LA45_0==25) ) {
-                alt45=1;
+            if ( (LA40_0==22) ) {
+                alt40=1;
             }
-            switch (alt45) {
+            switch (alt40) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1809:4: otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1709:4: otherlv_2= 'providedRoles' otherlv_3= '{' ( (lv_providedRoles_4_0= ruleProvidedRole ) ) (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )* otherlv_7= '}'
                     {
-                    otherlv_2=(Token)match(input,25,FollowSets000.FOLLOW_25_in_ruleSubSystem3913); 
+                    otherlv_2=(Token)match(input,22,FollowSets000.FOLLOW_22_in_ruleSubSystem3703); 
 
                         	newLeafNode(otherlv_2, grammarAccess.getSubSystemAccess().getProvidedRolesKeyword_2_0());
                         
-                    otherlv_3=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleSubSystem3925); 
+                    otherlv_3=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleSubSystem3715); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_2_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1817:1: ( (lv_providedRoles_4_0= ruleProvidedRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1818:1: (lv_providedRoles_4_0= ruleProvidedRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1717:1: ( (lv_providedRoles_4_0= ruleProvidedRole ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1718:1: (lv_providedRoles_4_0= ruleProvidedRole )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1818:1: (lv_providedRoles_4_0= ruleProvidedRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1819:3: lv_providedRoles_4_0= ruleProvidedRole
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1718:1: (lv_providedRoles_4_0= ruleProvidedRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1719:3: lv_providedRoles_4_0= ruleProvidedRole
                     {
                      
                     	        newCompositeNode(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleSubSystem3946);
+                    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleSubSystem3736);
                     lv_providedRoles_4_0=ruleProvidedRole();
 
                     state._fsp--;
@@ -4650,35 +4418,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1835:2: (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )*
-                    loop44:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1735:2: (otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) ) )*
+                    loop39:
                     do {
-                        int alt44=2;
-                        int LA44_0 = input.LA(1);
+                        int alt39=2;
+                        int LA39_0 = input.LA(1);
 
-                        if ( (LA44_0==14) ) {
-                            alt44=1;
+                        if ( (LA39_0==17) ) {
+                            alt39=1;
                         }
 
 
-                        switch (alt44) {
+                        switch (alt39) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1835:4: otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1735:4: otherlv_5= ',' ( (lv_providedRoles_6_0= ruleProvidedRole ) )
                     	    {
-                    	    otherlv_5=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSubSystem3959); 
+                    	    otherlv_5=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSubSystem3749); 
 
                     	        	newLeafNode(otherlv_5, grammarAccess.getSubSystemAccess().getCommaKeyword_2_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1839:1: ( (lv_providedRoles_6_0= ruleProvidedRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1840:1: (lv_providedRoles_6_0= ruleProvidedRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1739:1: ( (lv_providedRoles_6_0= ruleProvidedRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1740:1: (lv_providedRoles_6_0= ruleProvidedRole )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1840:1: (lv_providedRoles_6_0= ruleProvidedRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1841:3: lv_providedRoles_6_0= ruleProvidedRole
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1740:1: (lv_providedRoles_6_0= ruleProvidedRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1741:3: lv_providedRoles_6_0= ruleProvidedRole
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getSubSystemAccess().getProvidedRolesProvidedRoleParserRuleCall_2_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleSubSystem3980);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedRole_in_ruleSubSystem3770);
                     	    lv_providedRoles_6_0=ruleProvidedRole();
 
                     	    state._fsp--;
@@ -4705,11 +4473,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop44;
+                    	    break loop39;
                         }
                     } while (true);
 
-                    otherlv_7=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleSubSystem3994); 
+                    otherlv_7=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleSubSystem3784); 
 
                         	newLeafNode(otherlv_7, grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_2_4());
                         
@@ -4719,35 +4487,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1861:3: (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )?
-            int alt47=2;
-            int LA47_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1761:3: (otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}' )?
+            int alt42=2;
+            int LA42_0 = input.LA(1);
 
-            if ( (LA47_0==26) ) {
-                alt47=1;
+            if ( (LA42_0==23) ) {
+                alt42=1;
             }
-            switch (alt47) {
+            switch (alt42) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1861:5: otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1761:5: otherlv_8= 'requiredRoles' otherlv_9= '{' ( (lv_requiredRoles_10_0= ruleRequiredRole ) ) (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )* otherlv_13= '}'
                     {
-                    otherlv_8=(Token)match(input,26,FollowSets000.FOLLOW_26_in_ruleSubSystem4009); 
+                    otherlv_8=(Token)match(input,23,FollowSets000.FOLLOW_23_in_ruleSubSystem3799); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getSubSystemAccess().getRequiredRolesKeyword_3_0());
                         
-                    otherlv_9=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleSubSystem4021); 
+                    otherlv_9=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleSubSystem3811); 
 
                         	newLeafNode(otherlv_9, grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_3_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1869:1: ( (lv_requiredRoles_10_0= ruleRequiredRole ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1870:1: (lv_requiredRoles_10_0= ruleRequiredRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1769:1: ( (lv_requiredRoles_10_0= ruleRequiredRole ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1770:1: (lv_requiredRoles_10_0= ruleRequiredRole )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1870:1: (lv_requiredRoles_10_0= ruleRequiredRole )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1871:3: lv_requiredRoles_10_0= ruleRequiredRole
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1770:1: (lv_requiredRoles_10_0= ruleRequiredRole )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1771:3: lv_requiredRoles_10_0= ruleRequiredRole
                     {
                      
                     	        newCompositeNode(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleSubSystem4042);
+                    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleSubSystem3832);
                     lv_requiredRoles_10_0=ruleRequiredRole();
 
                     state._fsp--;
@@ -4769,35 +4537,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1887:2: (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )*
-                    loop46:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1787:2: (otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) ) )*
+                    loop41:
                     do {
-                        int alt46=2;
-                        int LA46_0 = input.LA(1);
+                        int alt41=2;
+                        int LA41_0 = input.LA(1);
 
-                        if ( (LA46_0==14) ) {
-                            alt46=1;
+                        if ( (LA41_0==17) ) {
+                            alt41=1;
                         }
 
 
-                        switch (alt46) {
+                        switch (alt41) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1887:4: otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1787:4: otherlv_11= ',' ( (lv_requiredRoles_12_0= ruleRequiredRole ) )
                     	    {
-                    	    otherlv_11=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSubSystem4055); 
+                    	    otherlv_11=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSubSystem3845); 
 
                     	        	newLeafNode(otherlv_11, grammarAccess.getSubSystemAccess().getCommaKeyword_3_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1891:1: ( (lv_requiredRoles_12_0= ruleRequiredRole ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1892:1: (lv_requiredRoles_12_0= ruleRequiredRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1791:1: ( (lv_requiredRoles_12_0= ruleRequiredRole ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1792:1: (lv_requiredRoles_12_0= ruleRequiredRole )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1892:1: (lv_requiredRoles_12_0= ruleRequiredRole )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1893:3: lv_requiredRoles_12_0= ruleRequiredRole
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1792:1: (lv_requiredRoles_12_0= ruleRequiredRole )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1793:3: lv_requiredRoles_12_0= ruleRequiredRole
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getSubSystemAccess().getRequiredRolesRequiredRoleParserRuleCall_3_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleSubSystem4076);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredRole_in_ruleSubSystem3866);
                     	    lv_requiredRoles_12_0=ruleRequiredRole();
 
                     	    state._fsp--;
@@ -4824,11 +4592,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop46;
+                    	    break loop41;
                         }
                     } while (true);
 
-                    otherlv_13=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleSubSystem4090); 
+                    otherlv_13=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleSubSystem3880); 
 
                         	newLeafNode(otherlv_13, grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_3_4());
                         
@@ -4838,34 +4606,34 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_14=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleSubSystem4104); 
+            otherlv_14=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleSubSystem3894); 
 
                 	newLeafNode(otherlv_14, grammarAccess.getSubSystemAccess().getLeftCurlyBracketKeyword_4());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1917:1: (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )?
-            int alt49=2;
-            int LA49_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1817:1: (otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')' )?
+            int alt44=2;
+            int LA44_0 = input.LA(1);
 
-            if ( (LA49_0==24) ) {
-                alt49=1;
+            if ( (LA44_0==21) ) {
+                alt44=1;
             }
-            switch (alt49) {
+            switch (alt44) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1917:3: otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1817:3: otherlv_15= 'relationship' otherlv_16= '(' ( ( ruleEString ) ) (otherlv_18= ',' ( ( ruleEString ) ) )* otherlv_20= ')'
                     {
-                    otherlv_15=(Token)match(input,24,FollowSets000.FOLLOW_24_in_ruleSubSystem4117); 
+                    otherlv_15=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleSubSystem3907); 
 
                         	newLeafNode(otherlv_15, grammarAccess.getSubSystemAccess().getRelationshipKeyword_5_0());
                         
-                    otherlv_16=(Token)match(input,20,FollowSets000.FOLLOW_20_in_ruleSubSystem4129); 
+                    otherlv_16=(Token)match(input,16,FollowSets000.FOLLOW_16_in_ruleSubSystem3919); 
 
                         	newLeafNode(otherlv_16, grammarAccess.getSubSystemAccess().getLeftParenthesisKeyword_5_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1925:1: ( ( ruleEString ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1926:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1825:1: ( ( ruleEString ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1826:1: ( ruleEString )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1926:1: ( ruleEString )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1927:3: ruleEString
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1826:1: ( ruleEString )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1827:3: ruleEString
                     {
 
                     			if (current==null) {
@@ -4875,7 +4643,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                      
                     	        newCompositeNode(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSubSystem4152);
+                    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSubSystem3942);
                     ruleEString();
 
                     state._fsp--;
@@ -4889,30 +4657,30 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1940:2: (otherlv_18= ',' ( ( ruleEString ) ) )*
-                    loop48:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1840:2: (otherlv_18= ',' ( ( ruleEString ) ) )*
+                    loop43:
                     do {
-                        int alt48=2;
-                        int LA48_0 = input.LA(1);
+                        int alt43=2;
+                        int LA43_0 = input.LA(1);
 
-                        if ( (LA48_0==14) ) {
-                            alt48=1;
+                        if ( (LA43_0==17) ) {
+                            alt43=1;
                         }
 
 
-                        switch (alt48) {
+                        switch (alt43) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1940:4: otherlv_18= ',' ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1840:4: otherlv_18= ',' ( ( ruleEString ) )
                     	    {
-                    	    otherlv_18=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleSubSystem4165); 
+                    	    otherlv_18=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleSubSystem3955); 
 
                     	        	newLeafNode(otherlv_18, grammarAccess.getSubSystemAccess().getCommaKeyword_5_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1944:1: ( ( ruleEString ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1945:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1844:1: ( ( ruleEString ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1845:1: ( ruleEString )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1945:1: ( ruleEString )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1946:3: ruleEString
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1845:1: ( ruleEString )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1846:3: ruleEString
                     	    {
 
                     	    			if (current==null) {
@@ -4922,7 +4690,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	     
                     	    	        newCompositeNode(grammarAccess.getSubSystemAccess().getRelationshipRelationshipCrossReference_5_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSubSystem4188);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleSubSystem3978);
                     	    ruleEString();
 
                     	    state._fsp--;
@@ -4941,11 +4709,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop48;
+                    	    break loop43;
                         }
                     } while (true);
 
-                    otherlv_20=(Token)match(input,21,FollowSets000.FOLLOW_21_in_ruleSubSystem4202); 
+                    otherlv_20=(Token)match(input,18,FollowSets000.FOLLOW_18_in_ruleSubSystem3992); 
 
                         	newLeafNode(otherlv_20, grammarAccess.getSubSystemAccess().getRightParenthesisKeyword_5_4());
                         
@@ -4955,31 +4723,31 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1963:3: (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )?
-            int alt50=2;
-            int LA50_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1863:3: (otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) ) )?
+            int alt45=2;
+            int LA45_0 = input.LA(1);
 
-            if ( (LA50_0==42) ) {
-                alt50=1;
+            if ( (LA45_0==39) ) {
+                alt45=1;
             }
-            switch (alt50) {
+            switch (alt45) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1963:5: otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1863:5: otherlv_21= 'assembly' ( (lv_assembly_22_0= ruleComposedStructureAssembly ) )
                     {
-                    otherlv_21=(Token)match(input,42,FollowSets000.FOLLOW_42_in_ruleSubSystem4217); 
+                    otherlv_21=(Token)match(input,39,FollowSets000.FOLLOW_39_in_ruleSubSystem4007); 
 
                         	newLeafNode(otherlv_21, grammarAccess.getSubSystemAccess().getAssemblyKeyword_6_0());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1967:1: ( (lv_assembly_22_0= ruleComposedStructureAssembly ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1968:1: (lv_assembly_22_0= ruleComposedStructureAssembly )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1867:1: ( (lv_assembly_22_0= ruleComposedStructureAssembly ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1868:1: (lv_assembly_22_0= ruleComposedStructureAssembly )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1968:1: (lv_assembly_22_0= ruleComposedStructureAssembly )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1969:3: lv_assembly_22_0= ruleComposedStructureAssembly
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1868:1: (lv_assembly_22_0= ruleComposedStructureAssembly )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1869:3: lv_assembly_22_0= ruleComposedStructureAssembly
                     {
                      
                     	        newCompositeNode(grammarAccess.getSubSystemAccess().getAssemblyComposedStructureAssemblyParserRuleCall_6_1_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_ruleSubSystem4238);
+                    pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_ruleSubSystem4028);
                     lv_assembly_22_0=ruleComposedStructureAssembly();
 
                     state._fsp--;
@@ -5007,7 +4775,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_23=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleSubSystem4252); 
+            otherlv_23=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleSubSystem4042); 
 
                 	newLeafNode(otherlv_23, grammarAccess.getSubSystemAccess().getRightCurlyBracketKeyword_7());
                 
@@ -5032,7 +4800,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleComposedStructureAssembly"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1997:1: entryRuleComposedStructureAssembly returns [EObject current=null] : iv_ruleComposedStructureAssembly= ruleComposedStructureAssembly EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1897:1: entryRuleComposedStructureAssembly returns [EObject current=null] : iv_ruleComposedStructureAssembly= ruleComposedStructureAssembly EOF ;
     public final EObject entryRuleComposedStructureAssembly() throws RecognitionException {
         EObject current = null;
 
@@ -5040,17 +4808,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1998:2: (iv_ruleComposedStructureAssembly= ruleComposedStructureAssembly EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1999:2: iv_ruleComposedStructureAssembly= ruleComposedStructureAssembly EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1898:2: (iv_ruleComposedStructureAssembly= ruleComposedStructureAssembly EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1899:2: iv_ruleComposedStructureAssembly= ruleComposedStructureAssembly EOF
             {
              newCompositeNode(grammarAccess.getComposedStructureAssemblyRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_entryRuleComposedStructureAssembly4288);
+            pushFollow(FollowSets000.FOLLOW_ruleComposedStructureAssembly_in_entryRuleComposedStructureAssembly4078);
             iv_ruleComposedStructureAssembly=ruleComposedStructureAssembly();
 
             state._fsp--;
 
              current =iv_ruleComposedStructureAssembly; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleComposedStructureAssembly4298); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleComposedStructureAssembly4088); 
 
             }
 
@@ -5068,7 +4836,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleComposedStructureAssembly"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2006:1: ruleComposedStructureAssembly returns [EObject current=null] : ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1906:1: ruleComposedStructureAssembly returns [EObject current=null] : ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' ) ;
     public final EObject ruleComposedStructureAssembly() throws RecognitionException {
         EObject current = null;
 
@@ -5111,14 +4879,14 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2009:28: ( ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2010:1: ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1909:28: ( ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1910:1: ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2010:1: ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2010:2: () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1910:1: ( () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1910:2: () otherlv_1= 'ComposedStructureAssembly' otherlv_2= '{' (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )? (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )? (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )? (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )? otherlv_27= '}'
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2010:2: ()
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2011:5: 
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1910:2: ()
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1911:5: 
             {
 
                     current = forceCreateModelElement(
@@ -5128,43 +4896,43 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_1=(Token)match(input,44,FollowSets000.FOLLOW_44_in_ruleComposedStructureAssembly4344); 
+            otherlv_1=(Token)match(input,41,FollowSets000.FOLLOW_41_in_ruleComposedStructureAssembly4134); 
 
                 	newLeafNode(otherlv_1, grammarAccess.getComposedStructureAssemblyAccess().getComposedStructureAssemblyKeyword_1());
                 
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4356); 
+            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4146); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_2());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2024:1: (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )?
-            int alt52=2;
-            int LA52_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1924:1: (otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}' )?
+            int alt47=2;
+            int LA47_0 = input.LA(1);
 
-            if ( (LA52_0==45) ) {
-                alt52=1;
+            if ( (LA47_0==42) ) {
+                alt47=1;
             }
-            switch (alt52) {
+            switch (alt47) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2024:3: otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1924:3: otherlv_3= 'assemblyContexts' otherlv_4= '{' ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) ) (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )* otherlv_8= '}'
                     {
-                    otherlv_3=(Token)match(input,45,FollowSets000.FOLLOW_45_in_ruleComposedStructureAssembly4369); 
+                    otherlv_3=(Token)match(input,42,FollowSets000.FOLLOW_42_in_ruleComposedStructureAssembly4159); 
 
                         	newLeafNode(otherlv_3, grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsKeyword_3_0());
                         
-                    otherlv_4=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4381); 
+                    otherlv_4=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4171); 
 
                         	newLeafNode(otherlv_4, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_3_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2032:1: ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2033:1: (lv_assemblyContexts_5_0= ruleAssemblyContext )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1932:1: ( (lv_assemblyContexts_5_0= ruleAssemblyContext ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1933:1: (lv_assemblyContexts_5_0= ruleAssemblyContext )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2033:1: (lv_assemblyContexts_5_0= ruleAssemblyContext )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2034:3: lv_assemblyContexts_5_0= ruleAssemblyContext
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1933:1: (lv_assemblyContexts_5_0= ruleAssemblyContext )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1934:3: lv_assemblyContexts_5_0= ruleAssemblyContext
                     {
                      
                     	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4402);
+                    pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4192);
                     lv_assemblyContexts_5_0=ruleAssemblyContext();
 
                     state._fsp--;
@@ -5186,35 +4954,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2050:2: (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )*
-                    loop51:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1950:2: (otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) ) )*
+                    loop46:
                     do {
-                        int alt51=2;
-                        int LA51_0 = input.LA(1);
+                        int alt46=2;
+                        int LA46_0 = input.LA(1);
 
-                        if ( (LA51_0==14) ) {
-                            alt51=1;
+                        if ( (LA46_0==17) ) {
+                            alt46=1;
                         }
 
 
-                        switch (alt51) {
+                        switch (alt46) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2050:4: otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1950:4: otherlv_6= ',' ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) )
                     	    {
-                    	    otherlv_6=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleComposedStructureAssembly4415); 
+                    	    otherlv_6=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleComposedStructureAssembly4205); 
 
                     	        	newLeafNode(otherlv_6, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_3_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2054:1: ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2055:1: (lv_assemblyContexts_7_0= ruleAssemblyContext )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1954:1: ( (lv_assemblyContexts_7_0= ruleAssemblyContext ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1955:1: (lv_assemblyContexts_7_0= ruleAssemblyContext )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2055:1: (lv_assemblyContexts_7_0= ruleAssemblyContext )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2056:3: lv_assemblyContexts_7_0= ruleAssemblyContext
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1955:1: (lv_assemblyContexts_7_0= ruleAssemblyContext )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1956:3: lv_assemblyContexts_7_0= ruleAssemblyContext
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyContextsAssemblyContextParserRuleCall_3_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4436);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4226);
                     	    lv_assemblyContexts_7_0=ruleAssemblyContext();
 
                     	    state._fsp--;
@@ -5241,11 +5009,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop51;
+                    	    break loop46;
                         }
                     } while (true);
 
-                    otherlv_8=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleComposedStructureAssembly4450); 
+                    otherlv_8=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleComposedStructureAssembly4240); 
 
                         	newLeafNode(otherlv_8, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_3_4());
                         
@@ -5255,35 +5023,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2076:3: (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )?
-            int alt54=2;
-            int LA54_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1976:3: (otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}' )?
+            int alt49=2;
+            int LA49_0 = input.LA(1);
 
-            if ( (LA54_0==46) ) {
-                alt54=1;
+            if ( (LA49_0==43) ) {
+                alt49=1;
             }
-            switch (alt54) {
+            switch (alt49) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2076:5: otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1976:5: otherlv_9= 'assemblyConnectors' otherlv_10= '{' ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) ) (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )* otherlv_14= '}'
                     {
-                    otherlv_9=(Token)match(input,46,FollowSets000.FOLLOW_46_in_ruleComposedStructureAssembly4465); 
+                    otherlv_9=(Token)match(input,43,FollowSets000.FOLLOW_43_in_ruleComposedStructureAssembly4255); 
 
                         	newLeafNode(otherlv_9, grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsKeyword_4_0());
                         
-                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4477); 
+                    otherlv_10=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4267); 
 
                         	newLeafNode(otherlv_10, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_4_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2084:1: ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2085:1: (lv_assemblyConnectors_11_0= ruleAssemblyConnector )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1984:1: ( (lv_assemblyConnectors_11_0= ruleAssemblyConnector ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1985:1: (lv_assemblyConnectors_11_0= ruleAssemblyConnector )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2085:1: (lv_assemblyConnectors_11_0= ruleAssemblyConnector )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2086:3: lv_assemblyConnectors_11_0= ruleAssemblyConnector
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1985:1: (lv_assemblyConnectors_11_0= ruleAssemblyConnector )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:1986:3: lv_assemblyConnectors_11_0= ruleAssemblyConnector
                     {
                      
                     	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4498);
+                    pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4288);
                     lv_assemblyConnectors_11_0=ruleAssemblyConnector();
 
                     state._fsp--;
@@ -5305,35 +5073,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2102:2: (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )*
-                    loop53:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2002:2: (otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) ) )*
+                    loop48:
                     do {
-                        int alt53=2;
-                        int LA53_0 = input.LA(1);
+                        int alt48=2;
+                        int LA48_0 = input.LA(1);
 
-                        if ( (LA53_0==14) ) {
-                            alt53=1;
+                        if ( (LA48_0==17) ) {
+                            alt48=1;
                         }
 
 
-                        switch (alt53) {
+                        switch (alt48) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2102:4: otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2002:4: otherlv_12= ',' ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) )
                     	    {
-                    	    otherlv_12=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleComposedStructureAssembly4511); 
+                    	    otherlv_12=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleComposedStructureAssembly4301); 
 
                     	        	newLeafNode(otherlv_12, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_4_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2106:1: ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2107:1: (lv_assemblyConnectors_13_0= ruleAssemblyConnector )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2006:1: ( (lv_assemblyConnectors_13_0= ruleAssemblyConnector ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2007:1: (lv_assemblyConnectors_13_0= ruleAssemblyConnector )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2107:1: (lv_assemblyConnectors_13_0= ruleAssemblyConnector )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2108:3: lv_assemblyConnectors_13_0= ruleAssemblyConnector
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2007:1: (lv_assemblyConnectors_13_0= ruleAssemblyConnector )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2008:3: lv_assemblyConnectors_13_0= ruleAssemblyConnector
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getAssemblyConnectorsAssemblyConnectorParserRuleCall_4_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4532);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4322);
                     	    lv_assemblyConnectors_13_0=ruleAssemblyConnector();
 
                     	    state._fsp--;
@@ -5360,11 +5128,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop53;
+                    	    break loop48;
                         }
                     } while (true);
 
-                    otherlv_14=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleComposedStructureAssembly4546); 
+                    otherlv_14=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleComposedStructureAssembly4336); 
 
                         	newLeafNode(otherlv_14, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_4_4());
                         
@@ -5374,35 +5142,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2128:3: (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )?
-            int alt56=2;
-            int LA56_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2028:3: (otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}' )?
+            int alt51=2;
+            int LA51_0 = input.LA(1);
 
-            if ( (LA56_0==47) ) {
-                alt56=1;
+            if ( (LA51_0==44) ) {
+                alt51=1;
             }
-            switch (alt56) {
+            switch (alt51) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2128:5: otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2028:5: otherlv_15= 'providedDelegationConnectors' otherlv_16= '{' ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) ) (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )* otherlv_20= '}'
                     {
-                    otherlv_15=(Token)match(input,47,FollowSets000.FOLLOW_47_in_ruleComposedStructureAssembly4561); 
+                    otherlv_15=(Token)match(input,44,FollowSets000.FOLLOW_44_in_ruleComposedStructureAssembly4351); 
 
                         	newLeafNode(otherlv_15, grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsKeyword_5_0());
                         
-                    otherlv_16=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4573); 
+                    otherlv_16=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4363); 
 
                         	newLeafNode(otherlv_16, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_5_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2136:1: ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2137:1: (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2036:1: ( (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2037:1: (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2137:1: (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2138:3: lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2037:1: (lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2038:3: lv_providedDelegationConnectors_17_0= ruleProvidedDelegationConnector
                     {
                      
                     	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly4594);
+                    pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly4384);
                     lv_providedDelegationConnectors_17_0=ruleProvidedDelegationConnector();
 
                     state._fsp--;
@@ -5424,35 +5192,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2154:2: (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )*
-                    loop55:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2054:2: (otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) ) )*
+                    loop50:
                     do {
-                        int alt55=2;
-                        int LA55_0 = input.LA(1);
+                        int alt50=2;
+                        int LA50_0 = input.LA(1);
 
-                        if ( (LA55_0==14) ) {
-                            alt55=1;
+                        if ( (LA50_0==17) ) {
+                            alt50=1;
                         }
 
 
-                        switch (alt55) {
+                        switch (alt50) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2154:4: otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2054:4: otherlv_18= ',' ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) )
                     	    {
-                    	    otherlv_18=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleComposedStructureAssembly4607); 
+                    	    otherlv_18=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleComposedStructureAssembly4397); 
 
                     	        	newLeafNode(otherlv_18, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_5_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2158:1: ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2159:1: (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2058:1: ( (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2059:1: (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2159:1: (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2160:3: lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2059:1: (lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2060:3: lv_providedDelegationConnectors_19_0= ruleProvidedDelegationConnector
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getProvidedDelegationConnectorsProvidedDelegationConnectorParserRuleCall_5_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly4628);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly4418);
                     	    lv_providedDelegationConnectors_19_0=ruleProvidedDelegationConnector();
 
                     	    state._fsp--;
@@ -5479,11 +5247,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop55;
+                    	    break loop50;
                         }
                     } while (true);
 
-                    otherlv_20=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleComposedStructureAssembly4642); 
+                    otherlv_20=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleComposedStructureAssembly4432); 
 
                         	newLeafNode(otherlv_20, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_5_4());
                         
@@ -5493,35 +5261,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2180:3: (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )?
-            int alt58=2;
-            int LA58_0 = input.LA(1);
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2080:3: (otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}' )?
+            int alt53=2;
+            int LA53_0 = input.LA(1);
 
-            if ( (LA58_0==48) ) {
-                alt58=1;
+            if ( (LA53_0==45) ) {
+                alt53=1;
             }
-            switch (alt58) {
+            switch (alt53) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2180:5: otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2080:5: otherlv_21= 'requiredDelegationConnectors' otherlv_22= '{' ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) ) (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )* otherlv_26= '}'
                     {
-                    otherlv_21=(Token)match(input,48,FollowSets000.FOLLOW_48_in_ruleComposedStructureAssembly4657); 
+                    otherlv_21=(Token)match(input,45,FollowSets000.FOLLOW_45_in_ruleComposedStructureAssembly4447); 
 
                         	newLeafNode(otherlv_21, grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsKeyword_6_0());
                         
-                    otherlv_22=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4669); 
+                    otherlv_22=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleComposedStructureAssembly4459); 
 
                         	newLeafNode(otherlv_22, grammarAccess.getComposedStructureAssemblyAccess().getLeftCurlyBracketKeyword_6_1());
                         
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2188:1: ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2189:1: (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2088:1: ( (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector ) )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2089:1: (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2189:1: (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2190:3: lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2089:1: (lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2090:3: lv_requiredDelegationConnectors_23_0= ruleRequiredDelegationConnector
                     {
                      
                     	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_2_0()); 
                     	    
-                    pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly4690);
+                    pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly4480);
                     lv_requiredDelegationConnectors_23_0=ruleRequiredDelegationConnector();
 
                     state._fsp--;
@@ -5543,35 +5311,35 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
                     }
 
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2206:2: (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )*
-                    loop57:
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2106:2: (otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) ) )*
+                    loop52:
                     do {
-                        int alt57=2;
-                        int LA57_0 = input.LA(1);
+                        int alt52=2;
+                        int LA52_0 = input.LA(1);
 
-                        if ( (LA57_0==14) ) {
-                            alt57=1;
+                        if ( (LA52_0==17) ) {
+                            alt52=1;
                         }
 
 
-                        switch (alt57) {
+                        switch (alt52) {
                     	case 1 :
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2206:4: otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2106:4: otherlv_24= ',' ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) )
                     	    {
-                    	    otherlv_24=(Token)match(input,14,FollowSets000.FOLLOW_14_in_ruleComposedStructureAssembly4703); 
+                    	    otherlv_24=(Token)match(input,17,FollowSets000.FOLLOW_17_in_ruleComposedStructureAssembly4493); 
 
                     	        	newLeafNode(otherlv_24, grammarAccess.getComposedStructureAssemblyAccess().getCommaKeyword_6_3_0());
                     	        
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2210:1: ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2211:1: (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2110:1: ( (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector ) )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2111:1: (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector )
                     	    {
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2211:1: (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector )
-                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2212:3: lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2111:1: (lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector )
+                    	    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2112:3: lv_requiredDelegationConnectors_25_0= ruleRequiredDelegationConnector
                     	    {
                     	     
                     	    	        newCompositeNode(grammarAccess.getComposedStructureAssemblyAccess().getRequiredDelegationConnectorsRequiredDelegationConnectorParserRuleCall_6_3_1_0()); 
                     	    	    
-                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly4724);
+                    	    pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly4514);
                     	    lv_requiredDelegationConnectors_25_0=ruleRequiredDelegationConnector();
 
                     	    state._fsp--;
@@ -5598,11 +5366,11 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     	    break;
 
                     	default :
-                    	    break loop57;
+                    	    break loop52;
                         }
                     } while (true);
 
-                    otherlv_26=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleComposedStructureAssembly4738); 
+                    otherlv_26=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleComposedStructureAssembly4528); 
 
                         	newLeafNode(otherlv_26, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_6_4());
                         
@@ -5612,7 +5380,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_27=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleComposedStructureAssembly4752); 
+            otherlv_27=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleComposedStructureAssembly4542); 
 
                 	newLeafNode(otherlv_27, grammarAccess.getComposedStructureAssemblyAccess().getRightCurlyBracketKeyword_7());
                 
@@ -5637,7 +5405,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleAssemblyContext"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2244:1: entryRuleAssemblyContext returns [EObject current=null] : iv_ruleAssemblyContext= ruleAssemblyContext EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2144:1: entryRuleAssemblyContext returns [EObject current=null] : iv_ruleAssemblyContext= ruleAssemblyContext EOF ;
     public final EObject entryRuleAssemblyContext() throws RecognitionException {
         EObject current = null;
 
@@ -5645,17 +5413,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2245:2: (iv_ruleAssemblyContext= ruleAssemblyContext EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2246:2: iv_ruleAssemblyContext= ruleAssemblyContext EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2145:2: (iv_ruleAssemblyContext= ruleAssemblyContext EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2146:2: iv_ruleAssemblyContext= ruleAssemblyContext EOF
             {
              newCompositeNode(grammarAccess.getAssemblyContextRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_entryRuleAssemblyContext4788);
+            pushFollow(FollowSets000.FOLLOW_ruleAssemblyContext_in_entryRuleAssemblyContext4578);
             iv_ruleAssemblyContext=ruleAssemblyContext();
 
             state._fsp--;
 
              current =iv_ruleAssemblyContext; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAssemblyContext4798); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAssemblyContext4588); 
 
             }
 
@@ -5673,7 +5441,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleAssemblyContext"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2253:1: ruleAssemblyContext returns [EObject current=null] : (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2153:1: ruleAssemblyContext returns [EObject current=null] : (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' ) ;
     public final EObject ruleAssemblyContext() throws RecognitionException {
         EObject current = null;
 
@@ -5687,26 +5455,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2256:28: ( (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2257:1: (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2156:28: ( (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2157:1: (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2257:1: (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2257:3: otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2157:1: (otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2157:3: otherlv_0= 'AssemblyContext' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'encapsulatedComponent' ( ( ruleEString ) ) otherlv_5= '}'
             {
-            otherlv_0=(Token)match(input,49,FollowSets000.FOLLOW_49_in_ruleAssemblyContext4835); 
+            otherlv_0=(Token)match(input,46,FollowSets000.FOLLOW_46_in_ruleAssemblyContext4625); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getAssemblyContextAccess().getAssemblyContextKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2261:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2262:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2161:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2162:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2262:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2263:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2162:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2163:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getAssemblyContextAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyContext4856);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyContext4646);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -5728,19 +5496,19 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAssemblyContext4868); 
+            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAssemblyContext4658); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getAssemblyContextAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_3=(Token)match(input,50,FollowSets000.FOLLOW_50_in_ruleAssemblyContext4880); 
+            otherlv_3=(Token)match(input,47,FollowSets000.FOLLOW_47_in_ruleAssemblyContext4670); 
 
                 	newLeafNode(otherlv_3, grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentKeyword_3());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2287:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2288:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2187:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2188:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2288:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2289:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2188:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2189:3: ruleEString
             {
 
             			if (current==null) {
@@ -5750,7 +5518,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAssemblyContextAccess().getEncapsulatedComponentRepositoryComponentCrossReference_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyContext4903);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyContext4693);
             ruleEString();
 
             state._fsp--;
@@ -5764,7 +5532,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleAssemblyContext4915); 
+            otherlv_5=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAssemblyContext4705); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getAssemblyContextAccess().getRightCurlyBracketKeyword_5());
                 
@@ -5789,7 +5557,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleAssemblyConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2314:1: entryRuleAssemblyConnector returns [EObject current=null] : iv_ruleAssemblyConnector= ruleAssemblyConnector EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2214:1: entryRuleAssemblyConnector returns [EObject current=null] : iv_ruleAssemblyConnector= ruleAssemblyConnector EOF ;
     public final EObject entryRuleAssemblyConnector() throws RecognitionException {
         EObject current = null;
 
@@ -5797,17 +5565,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2315:2: (iv_ruleAssemblyConnector= ruleAssemblyConnector EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2316:2: iv_ruleAssemblyConnector= ruleAssemblyConnector EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2215:2: (iv_ruleAssemblyConnector= ruleAssemblyConnector EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2216:2: iv_ruleAssemblyConnector= ruleAssemblyConnector EOF
             {
              newCompositeNode(grammarAccess.getAssemblyConnectorRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_entryRuleAssemblyConnector4951);
+            pushFollow(FollowSets000.FOLLOW_ruleAssemblyConnector_in_entryRuleAssemblyConnector4741);
             iv_ruleAssemblyConnector=ruleAssemblyConnector();
 
             state._fsp--;
 
              current =iv_ruleAssemblyConnector; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAssemblyConnector4961); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleAssemblyConnector4751); 
 
             }
 
@@ -5825,7 +5593,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleAssemblyConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2323:1: ruleAssemblyConnector returns [EObject current=null] : (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2223:1: ruleAssemblyConnector returns [EObject current=null] : (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' ) ;
     public final EObject ruleAssemblyConnector() throws RecognitionException {
         EObject current = null;
 
@@ -5842,26 +5610,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2326:28: ( (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2327:1: (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2226:28: ( (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2227:1: (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2327:1: (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2327:3: otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2227:1: (otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2227:3: otherlv_0= 'AssemblyConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'requiredRole' ( ( ruleEString ) ) otherlv_5= 'providedRole' ( ( ruleEString ) ) otherlv_7= 'providingAssemblyContext' ( ( ruleEString ) ) otherlv_9= 'requiringAssemblyContext' ( ( ruleEString ) ) otherlv_11= '}'
             {
-            otherlv_0=(Token)match(input,51,FollowSets000.FOLLOW_51_in_ruleAssemblyConnector4998); 
+            otherlv_0=(Token)match(input,48,FollowSets000.FOLLOW_48_in_ruleAssemblyConnector4788); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getAssemblyConnectorAccess().getAssemblyConnectorKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2331:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2332:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2231:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2232:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2332:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2333:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2232:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2233:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector5019);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector4809);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -5883,19 +5651,19 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAssemblyConnector5031); 
+            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleAssemblyConnector4821); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getAssemblyConnectorAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_3=(Token)match(input,52,FollowSets000.FOLLOW_52_in_ruleAssemblyConnector5043); 
+            otherlv_3=(Token)match(input,49,FollowSets000.FOLLOW_49_in_ruleAssemblyConnector4833); 
 
                 	newLeafNode(otherlv_3, grammarAccess.getAssemblyConnectorAccess().getRequiredRoleKeyword_3());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2357:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2358:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2257:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2258:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2358:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2359:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2258:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2259:3: ruleEString
             {
 
             			if (current==null) {
@@ -5905,7 +5673,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getRequiredRoleRequiredRoleCrossReference_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector5066);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector4856);
             ruleEString();
 
             state._fsp--;
@@ -5919,15 +5687,15 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,53,FollowSets000.FOLLOW_53_in_ruleAssemblyConnector5078); 
+            otherlv_5=(Token)match(input,50,FollowSets000.FOLLOW_50_in_ruleAssemblyConnector4868); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getAssemblyConnectorAccess().getProvidedRoleKeyword_5());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2376:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2377:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2276:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2277:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2377:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2378:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2277:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2278:3: ruleEString
             {
 
             			if (current==null) {
@@ -5937,7 +5705,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getProvidedRoleProvidedRoleCrossReference_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector5101);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector4891);
             ruleEString();
 
             state._fsp--;
@@ -5951,15 +5719,15 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,54,FollowSets000.FOLLOW_54_in_ruleAssemblyConnector5113); 
+            otherlv_7=(Token)match(input,51,FollowSets000.FOLLOW_51_in_ruleAssemblyConnector4903); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextKeyword_7());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2395:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2396:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2295:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2296:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2396:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2397:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2296:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2297:3: ruleEString
             {
 
             			if (current==null) {
@@ -5969,7 +5737,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getProvidingAssemblyContextAssemblyContextCrossReference_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector5136);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector4926);
             ruleEString();
 
             state._fsp--;
@@ -5983,15 +5751,15 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,55,FollowSets000.FOLLOW_55_in_ruleAssemblyConnector5148); 
+            otherlv_9=(Token)match(input,52,FollowSets000.FOLLOW_52_in_ruleAssemblyConnector4938); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextKeyword_9());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2414:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2415:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2314:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2315:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2415:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2416:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2315:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2316:3: ruleEString
             {
 
             			if (current==null) {
@@ -6001,7 +5769,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getAssemblyConnectorAccess().getRequiringAssemblyContextAssemblyContextCrossReference_10_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector5171);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleAssemblyConnector4961);
             ruleEString();
 
             state._fsp--;
@@ -6015,7 +5783,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_11=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleAssemblyConnector5183); 
+            otherlv_11=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleAssemblyConnector4973); 
 
                 	newLeafNode(otherlv_11, grammarAccess.getAssemblyConnectorAccess().getRightCurlyBracketKeyword_11());
                 
@@ -6040,7 +5808,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleProvidedDelegationConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2441:1: entryRuleProvidedDelegationConnector returns [EObject current=null] : iv_ruleProvidedDelegationConnector= ruleProvidedDelegationConnector EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2341:1: entryRuleProvidedDelegationConnector returns [EObject current=null] : iv_ruleProvidedDelegationConnector= ruleProvidedDelegationConnector EOF ;
     public final EObject entryRuleProvidedDelegationConnector() throws RecognitionException {
         EObject current = null;
 
@@ -6048,17 +5816,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2442:2: (iv_ruleProvidedDelegationConnector= ruleProvidedDelegationConnector EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2443:2: iv_ruleProvidedDelegationConnector= ruleProvidedDelegationConnector EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2342:2: (iv_ruleProvidedDelegationConnector= ruleProvidedDelegationConnector EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2343:2: iv_ruleProvidedDelegationConnector= ruleProvidedDelegationConnector EOF
             {
              newCompositeNode(grammarAccess.getProvidedDelegationConnectorRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_entryRuleProvidedDelegationConnector5219);
+            pushFollow(FollowSets000.FOLLOW_ruleProvidedDelegationConnector_in_entryRuleProvidedDelegationConnector5009);
             iv_ruleProvidedDelegationConnector=ruleProvidedDelegationConnector();
 
             state._fsp--;
 
              current =iv_ruleProvidedDelegationConnector; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleProvidedDelegationConnector5229); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleProvidedDelegationConnector5019); 
 
             }
 
@@ -6076,7 +5844,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleProvidedDelegationConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2450:1: ruleProvidedDelegationConnector returns [EObject current=null] : (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2350:1: ruleProvidedDelegationConnector returns [EObject current=null] : (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' ) ;
     public final EObject ruleProvidedDelegationConnector() throws RecognitionException {
         EObject current = null;
 
@@ -6092,26 +5860,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2453:28: ( (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2454:1: (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2353:28: ( (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2354:1: (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2454:1: (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2454:3: otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2354:1: (otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2354:3: otherlv_0= 'ProvidedDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerProvidedRole' ( ( ruleEString ) ) otherlv_7= 'outerProvidedRole' ( ( ruleEString ) ) otherlv_9= '}'
             {
-            otherlv_0=(Token)match(input,56,FollowSets000.FOLLOW_56_in_ruleProvidedDelegationConnector5266); 
+            otherlv_0=(Token)match(input,53,FollowSets000.FOLLOW_53_in_ruleProvidedDelegationConnector5056); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getProvidedDelegationConnectorAccess().getProvidedDelegationConnectorKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2458:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2459:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2358:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2359:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2459:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2460:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2359:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2360:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5287);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5077);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -6133,19 +5901,19 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleProvidedDelegationConnector5299); 
+            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleProvidedDelegationConnector5089); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getProvidedDelegationConnectorAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_3=(Token)match(input,57,FollowSets000.FOLLOW_57_in_ruleProvidedDelegationConnector5311); 
+            otherlv_3=(Token)match(input,54,FollowSets000.FOLLOW_54_in_ruleProvidedDelegationConnector5101); 
 
                 	newLeafNode(otherlv_3, grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextKeyword_3());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2484:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2485:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2384:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2385:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2485:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2486:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2385:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2386:3: ruleEString
             {
 
             			if (current==null) {
@@ -6155,7 +5923,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5334);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5124);
             ruleEString();
 
             state._fsp--;
@@ -6169,15 +5937,15 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,58,FollowSets000.FOLLOW_58_in_ruleProvidedDelegationConnector5346); 
+            otherlv_5=(Token)match(input,55,FollowSets000.FOLLOW_55_in_ruleProvidedDelegationConnector5136); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleKeyword_5());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2503:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2504:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2403:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2404:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2504:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2505:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2404:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2405:3: ruleEString
             {
 
             			if (current==null) {
@@ -6187,7 +5955,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getInnerProvidedRoleProvidedRoleCrossReference_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5369);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5159);
             ruleEString();
 
             state._fsp--;
@@ -6201,15 +5969,15 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,59,FollowSets000.FOLLOW_59_in_ruleProvidedDelegationConnector5381); 
+            otherlv_7=(Token)match(input,56,FollowSets000.FOLLOW_56_in_ruleProvidedDelegationConnector5171); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleKeyword_7());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2522:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2523:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2422:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2423:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2523:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2524:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2423:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2424:3: ruleEString
             {
 
             			if (current==null) {
@@ -6219,7 +5987,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getProvidedDelegationConnectorAccess().getOuterProvidedRoleProvidedRoleCrossReference_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5404);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5194);
             ruleEString();
 
             state._fsp--;
@@ -6233,7 +6001,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleProvidedDelegationConnector5416); 
+            otherlv_9=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleProvidedDelegationConnector5206); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getProvidedDelegationConnectorAccess().getRightCurlyBracketKeyword_9());
                 
@@ -6258,7 +6026,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "entryRuleRequiredDelegationConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2549:1: entryRuleRequiredDelegationConnector returns [EObject current=null] : iv_ruleRequiredDelegationConnector= ruleRequiredDelegationConnector EOF ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2449:1: entryRuleRequiredDelegationConnector returns [EObject current=null] : iv_ruleRequiredDelegationConnector= ruleRequiredDelegationConnector EOF ;
     public final EObject entryRuleRequiredDelegationConnector() throws RecognitionException {
         EObject current = null;
 
@@ -6266,17 +6034,17 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2550:2: (iv_ruleRequiredDelegationConnector= ruleRequiredDelegationConnector EOF )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2551:2: iv_ruleRequiredDelegationConnector= ruleRequiredDelegationConnector EOF
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2450:2: (iv_ruleRequiredDelegationConnector= ruleRequiredDelegationConnector EOF )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2451:2: iv_ruleRequiredDelegationConnector= ruleRequiredDelegationConnector EOF
             {
              newCompositeNode(grammarAccess.getRequiredDelegationConnectorRule()); 
-            pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_entryRuleRequiredDelegationConnector5452);
+            pushFollow(FollowSets000.FOLLOW_ruleRequiredDelegationConnector_in_entryRuleRequiredDelegationConnector5242);
             iv_ruleRequiredDelegationConnector=ruleRequiredDelegationConnector();
 
             state._fsp--;
 
              current =iv_ruleRequiredDelegationConnector; 
-            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRequiredDelegationConnector5462); 
+            match(input,EOF,FollowSets000.FOLLOW_EOF_in_entryRuleRequiredDelegationConnector5252); 
 
             }
 
@@ -6294,7 +6062,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "ruleRequiredDelegationConnector"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2558:1: ruleRequiredDelegationConnector returns [EObject current=null] : (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2458:1: ruleRequiredDelegationConnector returns [EObject current=null] : (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' ) ;
     public final EObject ruleRequiredDelegationConnector() throws RecognitionException {
         EObject current = null;
 
@@ -6310,26 +6078,26 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
          enterRule(); 
             
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2561:28: ( (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2562:1: (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2461:28: ( (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2462:1: (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2562:1: (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2562:3: otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}'
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2462:1: (otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}' )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2462:3: otherlv_0= 'RequiredDelegationConnector' ( (lv_name_1_0= ruleEString ) ) otherlv_2= '{' otherlv_3= 'assemblyContext' ( ( ruleEString ) ) otherlv_5= 'innerRequiredRole' ( ( ruleEString ) ) otherlv_7= 'outerRequiredRole' ( ( ruleEString ) ) otherlv_9= '}'
             {
-            otherlv_0=(Token)match(input,60,FollowSets000.FOLLOW_60_in_ruleRequiredDelegationConnector5499); 
+            otherlv_0=(Token)match(input,57,FollowSets000.FOLLOW_57_in_ruleRequiredDelegationConnector5289); 
 
                 	newLeafNode(otherlv_0, grammarAccess.getRequiredDelegationConnectorAccess().getRequiredDelegationConnectorKeyword_0());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2566:1: ( (lv_name_1_0= ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2567:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2466:1: ( (lv_name_1_0= ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2467:1: (lv_name_1_0= ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2567:1: (lv_name_1_0= ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2568:3: lv_name_1_0= ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2467:1: (lv_name_1_0= ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2468:3: lv_name_1_0= ruleEString
             {
              
             	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getNameEStringParserRuleCall_1_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5520);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5310);
             lv_name_1_0=ruleEString();
 
             state._fsp--;
@@ -6351,19 +6119,19 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRequiredDelegationConnector5532); 
+            otherlv_2=(Token)match(input,12,FollowSets000.FOLLOW_12_in_ruleRequiredDelegationConnector5322); 
 
                 	newLeafNode(otherlv_2, grammarAccess.getRequiredDelegationConnectorAccess().getLeftCurlyBracketKeyword_2());
                 
-            otherlv_3=(Token)match(input,57,FollowSets000.FOLLOW_57_in_ruleRequiredDelegationConnector5544); 
+            otherlv_3=(Token)match(input,54,FollowSets000.FOLLOW_54_in_ruleRequiredDelegationConnector5334); 
 
                 	newLeafNode(otherlv_3, grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextKeyword_3());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2592:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2593:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2492:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2493:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2593:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2594:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2493:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2494:3: ruleEString
             {
 
             			if (current==null) {
@@ -6373,7 +6141,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getAssemblyContextAssemblyContextCrossReference_4_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5567);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5357);
             ruleEString();
 
             state._fsp--;
@@ -6387,15 +6155,15 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_5=(Token)match(input,61,FollowSets000.FOLLOW_61_in_ruleRequiredDelegationConnector5579); 
+            otherlv_5=(Token)match(input,58,FollowSets000.FOLLOW_58_in_ruleRequiredDelegationConnector5369); 
 
                 	newLeafNode(otherlv_5, grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleKeyword_5());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2611:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2612:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2511:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2512:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2612:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2613:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2512:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2513:3: ruleEString
             {
 
             			if (current==null) {
@@ -6405,7 +6173,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getInnerRequiredRoleRequiredRoleCrossReference_6_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5602);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5392);
             ruleEString();
 
             state._fsp--;
@@ -6419,15 +6187,15 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_7=(Token)match(input,62,FollowSets000.FOLLOW_62_in_ruleRequiredDelegationConnector5614); 
+            otherlv_7=(Token)match(input,59,FollowSets000.FOLLOW_59_in_ruleRequiredDelegationConnector5404); 
 
                 	newLeafNode(otherlv_7, grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleKeyword_7());
                 
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2630:1: ( ( ruleEString ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2631:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2530:1: ( ( ruleEString ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2531:1: ( ruleEString )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2631:1: ( ruleEString )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2632:3: ruleEString
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2531:1: ( ruleEString )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2532:3: ruleEString
             {
 
             			if (current==null) {
@@ -6437,7 +6205,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
              
             	        newCompositeNode(grammarAccess.getRequiredDelegationConnectorAccess().getOuterRequiredRoleRequiredRoleCrossReference_8_0()); 
             	    
-            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5637);
+            pushFollow(FollowSets000.FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5427);
             ruleEString();
 
             state._fsp--;
@@ -6451,7 +6219,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
             }
 
-            otherlv_9=(Token)match(input,15,FollowSets000.FOLLOW_15_in_ruleRequiredDelegationConnector5649); 
+            otherlv_9=(Token)match(input,13,FollowSets000.FOLLOW_13_in_ruleRequiredDelegationConnector5439); 
 
                 	newLeafNode(otherlv_9, grammarAccess.getRequiredDelegationConnectorAccess().getRightCurlyBracketKeyword_9());
                 
@@ -6476,7 +6244,7 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
 
     // $ANTLR start "rulePrimitiveTypeEnum"
-    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2657:1: rulePrimitiveTypeEnum returns [Enumerator current=null] : ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) ) ;
+    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2557:1: rulePrimitiveTypeEnum returns [Enumerator current=null] : ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) ) ;
     public final Enumerator rulePrimitiveTypeEnum() throws RecognitionException {
         Enumerator current = null;
 
@@ -6490,62 +6258,62 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
 
          enterRule(); 
         try {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2659:28: ( ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) ) )
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2660:1: ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2559:28: ( ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) ) )
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2560:1: ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) )
             {
-            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2660:1: ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) )
-            int alt59=7;
+            // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2560:1: ( (enumLiteral_0= 'INT' ) | (enumLiteral_1= 'STRING' ) | (enumLiteral_2= 'BOOL' ) | (enumLiteral_3= 'DOUBLE' ) | (enumLiteral_4= 'CHAR' ) | (enumLiteral_5= 'BYTE' ) | (enumLiteral_6= 'LONG' ) )
+            int alt54=7;
             switch ( input.LA(1) ) {
-            case 63:
+            case 60:
                 {
-                alt59=1;
+                alt54=1;
                 }
                 break;
-            case 64:
+            case 61:
                 {
-                alt59=2;
+                alt54=2;
                 }
                 break;
-            case 65:
+            case 62:
                 {
-                alt59=3;
+                alt54=3;
                 }
                 break;
-            case 66:
+            case 63:
                 {
-                alt59=4;
+                alt54=4;
                 }
                 break;
-            case 67:
+            case 64:
                 {
-                alt59=5;
+                alt54=5;
                 }
                 break;
-            case 68:
+            case 65:
                 {
-                alt59=6;
+                alt54=6;
                 }
                 break;
-            case 69:
+            case 66:
                 {
-                alt59=7;
+                alt54=7;
                 }
                 break;
             default:
                 NoViableAltException nvae =
-                    new NoViableAltException("", 59, 0, input);
+                    new NoViableAltException("", 54, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt59) {
+            switch (alt54) {
                 case 1 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2660:2: (enumLiteral_0= 'INT' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2560:2: (enumLiteral_0= 'INT' )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2660:2: (enumLiteral_0= 'INT' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2660:4: enumLiteral_0= 'INT'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2560:2: (enumLiteral_0= 'INT' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2560:4: enumLiteral_0= 'INT'
                     {
-                    enumLiteral_0=(Token)match(input,63,FollowSets000.FOLLOW_63_in_rulePrimitiveTypeEnum5699); 
+                    enumLiteral_0=(Token)match(input,60,FollowSets000.FOLLOW_60_in_rulePrimitiveTypeEnum5489); 
 
                             current = grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_0, grammarAccess.getPrimitiveTypeEnumAccess().getINTEnumLiteralDeclaration_0()); 
@@ -6557,12 +6325,12 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 2 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2666:6: (enumLiteral_1= 'STRING' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2566:6: (enumLiteral_1= 'STRING' )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2666:6: (enumLiteral_1= 'STRING' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2666:8: enumLiteral_1= 'STRING'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2566:6: (enumLiteral_1= 'STRING' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2566:8: enumLiteral_1= 'STRING'
                     {
-                    enumLiteral_1=(Token)match(input,64,FollowSets000.FOLLOW_64_in_rulePrimitiveTypeEnum5716); 
+                    enumLiteral_1=(Token)match(input,61,FollowSets000.FOLLOW_61_in_rulePrimitiveTypeEnum5506); 
 
                             current = grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_1, grammarAccess.getPrimitiveTypeEnumAccess().getSTRINGEnumLiteralDeclaration_1()); 
@@ -6574,12 +6342,12 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 3 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2672:6: (enumLiteral_2= 'BOOL' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2572:6: (enumLiteral_2= 'BOOL' )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2672:6: (enumLiteral_2= 'BOOL' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2672:8: enumLiteral_2= 'BOOL'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2572:6: (enumLiteral_2= 'BOOL' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2572:8: enumLiteral_2= 'BOOL'
                     {
-                    enumLiteral_2=(Token)match(input,65,FollowSets000.FOLLOW_65_in_rulePrimitiveTypeEnum5733); 
+                    enumLiteral_2=(Token)match(input,62,FollowSets000.FOLLOW_62_in_rulePrimitiveTypeEnum5523); 
 
                             current = grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_2, grammarAccess.getPrimitiveTypeEnumAccess().getBOOLEnumLiteralDeclaration_2()); 
@@ -6591,12 +6359,12 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 4 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2678:6: (enumLiteral_3= 'DOUBLE' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2578:6: (enumLiteral_3= 'DOUBLE' )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2678:6: (enumLiteral_3= 'DOUBLE' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2678:8: enumLiteral_3= 'DOUBLE'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2578:6: (enumLiteral_3= 'DOUBLE' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2578:8: enumLiteral_3= 'DOUBLE'
                     {
-                    enumLiteral_3=(Token)match(input,66,FollowSets000.FOLLOW_66_in_rulePrimitiveTypeEnum5750); 
+                    enumLiteral_3=(Token)match(input,63,FollowSets000.FOLLOW_63_in_rulePrimitiveTypeEnum5540); 
 
                             current = grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_3, grammarAccess.getPrimitiveTypeEnumAccess().getDOUBLEEnumLiteralDeclaration_3()); 
@@ -6608,12 +6376,12 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 5 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2684:6: (enumLiteral_4= 'CHAR' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2584:6: (enumLiteral_4= 'CHAR' )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2684:6: (enumLiteral_4= 'CHAR' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2684:8: enumLiteral_4= 'CHAR'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2584:6: (enumLiteral_4= 'CHAR' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2584:8: enumLiteral_4= 'CHAR'
                     {
-                    enumLiteral_4=(Token)match(input,67,FollowSets000.FOLLOW_67_in_rulePrimitiveTypeEnum5767); 
+                    enumLiteral_4=(Token)match(input,64,FollowSets000.FOLLOW_64_in_rulePrimitiveTypeEnum5557); 
 
                             current = grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_4, grammarAccess.getPrimitiveTypeEnumAccess().getCHAREnumLiteralDeclaration_4()); 
@@ -6625,12 +6393,12 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 6 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2690:6: (enumLiteral_5= 'BYTE' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2590:6: (enumLiteral_5= 'BYTE' )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2690:6: (enumLiteral_5= 'BYTE' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2690:8: enumLiteral_5= 'BYTE'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2590:6: (enumLiteral_5= 'BYTE' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2590:8: enumLiteral_5= 'BYTE'
                     {
-                    enumLiteral_5=(Token)match(input,68,FollowSets000.FOLLOW_68_in_rulePrimitiveTypeEnum5784); 
+                    enumLiteral_5=(Token)match(input,65,FollowSets000.FOLLOW_65_in_rulePrimitiveTypeEnum5574); 
 
                             current = grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_5, grammarAccess.getPrimitiveTypeEnumAccess().getBYTEEnumLiteralDeclaration_5()); 
@@ -6642,12 +6410,12 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
                     }
                     break;
                 case 7 :
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2696:6: (enumLiteral_6= 'LONG' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2596:6: (enumLiteral_6= 'LONG' )
                     {
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2696:6: (enumLiteral_6= 'LONG' )
-                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2696:8: enumLiteral_6= 'LONG'
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2596:6: (enumLiteral_6= 'LONG' )
+                    // ../org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/parser/antlr/internal/InternalMyDslTest.g:2596:8: enumLiteral_6= 'LONG'
                     {
-                    enumLiteral_6=(Token)match(input,69,FollowSets000.FOLLOW_69_in_rulePrimitiveTypeEnum5801); 
+                    enumLiteral_6=(Token)match(input,66,FollowSets000.FOLLOW_66_in_rulePrimitiveTypeEnum5591); 
 
                             current = grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6().getEnumLiteral().getInstance();
                             newLeafNode(enumLiteral_6, grammarAccess.getPrimitiveTypeEnumAccess().getLONGEnumLiteralDeclaration_6()); 
@@ -6688,296 +6456,281 @@ public class InternalMyDslTestParser extends AbstractInternalAntlrParser {
         public static final BitSet FOLLOW_EOF_in_entryRuleRepository85 = new BitSet(new long[]{0x0000000000000002L});
         public static final BitSet FOLLOW_11_in_ruleRepository122 = new BitSet(new long[]{0x0000000000000030L});
         public static final BitSet FOLLOW_ruleEString_in_ruleRepository143 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepository155 = new BitSet(new long[]{0x000000000003A000L});
-        public static final BitSet FOLLOW_13_in_ruleRepository168 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepository180 = new BitSet(new long[]{0x0000000128000000L});
-        public static final BitSet FOLLOW_ruleDataType_in_ruleRepository201 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleRepository214 = new BitSet(new long[]{0x0000000128000000L});
-        public static final BitSet FOLLOW_ruleDataType_in_ruleRepository235 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleRepository249 = new BitSet(new long[]{0x0000000000038000L});
-        public static final BitSet FOLLOW_16_in_ruleRepository264 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepository276 = new BitSet(new long[]{0x0000000000040000L});
-        public static final BitSet FOLLOW_ruleInterface_in_ruleRepository297 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleRepository310 = new BitSet(new long[]{0x0000000000040000L});
-        public static final BitSet FOLLOW_ruleInterface_in_ruleRepository331 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleRepository345 = new BitSet(new long[]{0x0000000000028000L});
-        public static final BitSet FOLLOW_17_in_ruleRepository360 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepository372 = new BitSet(new long[]{0x00000B0000800000L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_in_ruleRepository393 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleRepository406 = new BitSet(new long[]{0x00000B0000800000L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_in_ruleRepository427 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleRepository441 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleRepository455 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleDataType_in_entryRuleDataType491 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleDataType501 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCollectionDataType_in_ruleDataType548 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeDataType_in_ruleDataType575 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rulePrimitiveDataType_in_ruleDataType602 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_in_entryRuleRepositoryComponent637 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRepositoryComponent647 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_Impl_in_ruleRepositoryComponent694 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleBasicComponent_in_ruleRepositoryComponent721 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeComponent_in_ruleRepositoryComponent748 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSubSystem_in_ruleRepositoryComponent775 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_entryRuleEString811 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleEString822 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_STRING_in_ruleEString862 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_RULE_ID_in_ruleEString888 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInterface_in_entryRuleInterface933 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleInterface943 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_18_in_ruleInterface980 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleInterface1001 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleInterface1013 = new BitSet(new long[]{0x0000000000488000L});
-        public static final BitSet FOLLOW_19_in_ruleInterface1026 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_20_in_ruleInterface1038 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleInterface1061 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_14_in_ruleInterface1074 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleInterface1097 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_21_in_ruleInterface1111 = new BitSet(new long[]{0x0000000000408000L});
-        public static final BitSet FOLLOW_22_in_ruleInterface1126 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleInterface1138 = new BitSet(new long[]{0x0000002000000030L});
-        public static final BitSet FOLLOW_ruleSignature_in_ruleInterface1159 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleInterface1172 = new BitSet(new long[]{0x0000002000000030L});
-        public static final BitSet FOLLOW_ruleSignature_in_ruleInterface1193 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleInterface1207 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleInterface1221 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRepositoryComponent_Impl_in_entryRuleRepositoryComponent_Impl1257 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRepositoryComponent_Impl1267 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_23_in_ruleRepositoryComponent_Impl1304 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1325 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepositoryComponent_Impl1337 = new BitSet(new long[]{0x0000000007008000L});
-        public static final BitSet FOLLOW_24_in_ruleRepositoryComponent_Impl1350 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_20_in_ruleRepositoryComponent_Impl1362 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1385 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_14_in_ruleRepositoryComponent_Impl1398 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1421 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_21_in_ruleRepositoryComponent_Impl1435 = new BitSet(new long[]{0x0000000006008000L});
-        public static final BitSet FOLLOW_25_in_ruleRepositoryComponent_Impl1450 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepositoryComponent_Impl1462 = new BitSet(new long[]{0x0000004000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1483 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleRepositoryComponent_Impl1496 = new BitSet(new long[]{0x0000004000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1517 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleRepositoryComponent_Impl1531 = new BitSet(new long[]{0x0000000004008000L});
-        public static final BitSet FOLLOW_26_in_ruleRepositoryComponent_Impl1546 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRepositoryComponent_Impl1558 = new BitSet(new long[]{0x0000008000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl1579 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleRepositoryComponent_Impl1592 = new BitSet(new long[]{0x0000008000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl1613 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleRepositoryComponent_Impl1627 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleRepositoryComponent_Impl1641 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCollectionDataType_in_entryRuleCollectionDataType1677 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleCollectionDataType1687 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_27_in_ruleCollectionDataType1724 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCollectionDataType1745 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleCollectionDataType1757 = new BitSet(new long[]{0x0000000010000000L});
-        public static final BitSet FOLLOW_28_in_ruleCollectionDataType1769 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCollectionDataType1792 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleCollectionDataType1804 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeDataType_in_entryRuleCompositeDataType1840 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleCompositeDataType1850 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_29_in_ruleCompositeDataType1887 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeDataType1908 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleCompositeDataType1920 = new BitSet(new long[]{0x00000000C0008000L});
-        public static final BitSet FOLLOW_30_in_ruleCompositeDataType1933 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_20_in_ruleCompositeDataType1945 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeDataType1968 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_14_in_ruleCompositeDataType1981 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeDataType2004 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_21_in_ruleCompositeDataType2018 = new BitSet(new long[]{0x0000000080008000L});
-        public static final BitSet FOLLOW_31_in_ruleCompositeDataType2033 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleCompositeDataType2045 = new BitSet(new long[]{0x0000000800000000L});
-        public static final BitSet FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType2066 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleCompositeDataType2079 = new BitSet(new long[]{0x0000000800000000L});
-        public static final BitSet FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType2100 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleCompositeDataType2114 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleCompositeDataType2128 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_rulePrimitiveDataType_in_entryRulePrimitiveDataType2164 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRulePrimitiveDataType2174 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_32_in_rulePrimitiveDataType2211 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_rulePrimitiveDataType2223 = new BitSet(new long[]{0x0000000200000000L});
-        public static final BitSet FOLLOW_33_in_rulePrimitiveDataType2235 = new BitSet(new long[]{0x8000000000000000L,0x000000000000003FL});
-        public static final BitSet FOLLOW_rulePrimitiveTypeEnum_in_rulePrimitiveDataType2256 = new BitSet(new long[]{0x0000000400000000L});
-        public static final BitSet FOLLOW_34_in_rulePrimitiveDataType2268 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_rulePrimitiveDataType2289 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_rulePrimitiveDataType2301 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleInnerDeclaration_in_entryRuleInnerDeclaration2337 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleInnerDeclaration2347 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_35_in_ruleInnerDeclaration2384 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleInnerDeclaration2405 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleInnerDeclaration2417 = new BitSet(new long[]{0x0000001000000000L});
-        public static final BitSet FOLLOW_36_in_ruleInnerDeclaration2429 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleInnerDeclaration2452 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleInnerDeclaration2464 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSignature_in_entryRuleSignature2500 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleSignature2510 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSignature2559 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_37_in_ruleSignature2577 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSignature2599 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_20_in_ruleSignature2611 = new BitSet(new long[]{0x0000000000200030L});
-        public static final BitSet FOLLOW_ruleParameter_in_ruleSignature2633 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_14_in_ruleSignature2646 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleParameter_in_ruleSignature2667 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_21_in_ruleSignature2683 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleParameter_in_entryRuleParameter2719 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleParameter2729 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleParameter2777 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleParameter2798 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_entryRuleProvidedRole2834 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleProvidedRole2844 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_38_in_ruleProvidedRole2890 = new BitSet(new long[]{0x0000000000000032L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedRole2914 = new BitSet(new long[]{0x0000000000004032L});
-        public static final BitSet FOLLOW_14_in_ruleProvidedRole2927 = new BitSet(new long[]{0x0000000000000032L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_entryRuleRequiredRole2967 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRequiredRole2977 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_39_in_ruleRequiredRole3023 = new BitSet(new long[]{0x0000000000000032L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredRole3047 = new BitSet(new long[]{0x0000000000004032L});
-        public static final BitSet FOLLOW_14_in_ruleRequiredRole3060 = new BitSet(new long[]{0x0000000000000032L});
-        public static final BitSet FOLLOW_ruleBasicComponent_in_entryRuleBasicComponent3100 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleBasicComponent3110 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_40_in_ruleBasicComponent3147 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleBasicComponent3168 = new BitSet(new long[]{0x000000C000001000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleBasicComponent3190 = new BitSet(new long[]{0x0000008000005000L});
-        public static final BitSet FOLLOW_14_in_ruleBasicComponent3203 = new BitSet(new long[]{0x0000004000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleBasicComponent3224 = new BitSet(new long[]{0x0000008000005000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleBasicComponent3250 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_14_in_ruleBasicComponent3263 = new BitSet(new long[]{0x0000008000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleBasicComponent3284 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleBasicComponent3300 = new BitSet(new long[]{0x0000000001008000L});
-        public static final BitSet FOLLOW_24_in_ruleBasicComponent3313 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_20_in_ruleBasicComponent3325 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleBasicComponent3348 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_14_in_ruleBasicComponent3361 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleBasicComponent3384 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_21_in_ruleBasicComponent3398 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleBasicComponent3412 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleCompositeComponent_in_entryRuleCompositeComponent3448 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleCompositeComponent3458 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_41_in_ruleCompositeComponent3495 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeComponent3516 = new BitSet(new long[]{0x000000C000001000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3538 = new BitSet(new long[]{0x0000008000005000L});
-        public static final BitSet FOLLOW_14_in_ruleCompositeComponent3551 = new BitSet(new long[]{0x0000004000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3572 = new BitSet(new long[]{0x0000008000005000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleCompositeComponent3598 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_14_in_ruleCompositeComponent3611 = new BitSet(new long[]{0x0000008000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleCompositeComponent3632 = new BitSet(new long[]{0x0000000000005000L});
-        public static final BitSet FOLLOW_12_in_ruleCompositeComponent3648 = new BitSet(new long[]{0x0000040001008000L});
-        public static final BitSet FOLLOW_24_in_ruleCompositeComponent3661 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_20_in_ruleCompositeComponent3673 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeComponent3696 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_14_in_ruleCompositeComponent3709 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeComponent3732 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_21_in_ruleCompositeComponent3746 = new BitSet(new long[]{0x0000040000008000L});
-        public static final BitSet FOLLOW_42_in_ruleCompositeComponent3761 = new BitSet(new long[]{0x0000100000000000L});
-        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_ruleCompositeComponent3782 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleCompositeComponent3796 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleSubSystem_in_entryRuleSubSystem3832 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleSubSystem3842 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_43_in_ruleSubSystem3879 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSubSystem3900 = new BitSet(new long[]{0x0000000006001000L});
-        public static final BitSet FOLLOW_25_in_ruleSubSystem3913 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleSubSystem3925 = new BitSet(new long[]{0x0000004000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleSubSystem3946 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleSubSystem3959 = new BitSet(new long[]{0x0000004000000000L});
-        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleSubSystem3980 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleSubSystem3994 = new BitSet(new long[]{0x0000000004001000L});
-        public static final BitSet FOLLOW_26_in_ruleSubSystem4009 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleSubSystem4021 = new BitSet(new long[]{0x0000008000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleSubSystem4042 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleSubSystem4055 = new BitSet(new long[]{0x0000008000000000L});
-        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleSubSystem4076 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleSubSystem4090 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleSubSystem4104 = new BitSet(new long[]{0x0000040001008000L});
-        public static final BitSet FOLLOW_24_in_ruleSubSystem4117 = new BitSet(new long[]{0x0000000000100000L});
-        public static final BitSet FOLLOW_20_in_ruleSubSystem4129 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSubSystem4152 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_14_in_ruleSubSystem4165 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleSubSystem4188 = new BitSet(new long[]{0x0000000000204000L});
-        public static final BitSet FOLLOW_21_in_ruleSubSystem4202 = new BitSet(new long[]{0x0000040000008000L});
-        public static final BitSet FOLLOW_42_in_ruleSubSystem4217 = new BitSet(new long[]{0x0000100000000000L});
-        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_ruleSubSystem4238 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleSubSystem4252 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_entryRuleComposedStructureAssembly4288 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleComposedStructureAssembly4298 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_44_in_ruleComposedStructureAssembly4344 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4356 = new BitSet(new long[]{0x0001E00000008000L});
-        public static final BitSet FOLLOW_45_in_ruleComposedStructureAssembly4369 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4381 = new BitSet(new long[]{0x0002000000000000L});
-        public static final BitSet FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4402 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleComposedStructureAssembly4415 = new BitSet(new long[]{0x0002000000000000L});
-        public static final BitSet FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4436 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleComposedStructureAssembly4450 = new BitSet(new long[]{0x0001C00000008000L});
-        public static final BitSet FOLLOW_46_in_ruleComposedStructureAssembly4465 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4477 = new BitSet(new long[]{0x0008000000000000L});
-        public static final BitSet FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4498 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleComposedStructureAssembly4511 = new BitSet(new long[]{0x0008000000000000L});
-        public static final BitSet FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4532 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleComposedStructureAssembly4546 = new BitSet(new long[]{0x0001800000008000L});
-        public static final BitSet FOLLOW_47_in_ruleComposedStructureAssembly4561 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4573 = new BitSet(new long[]{0x0100000000000000L});
-        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly4594 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleComposedStructureAssembly4607 = new BitSet(new long[]{0x0100000000000000L});
-        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly4628 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleComposedStructureAssembly4642 = new BitSet(new long[]{0x0001000000008000L});
-        public static final BitSet FOLLOW_48_in_ruleComposedStructureAssembly4657 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4669 = new BitSet(new long[]{0x1000000000000000L});
-        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly4690 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_14_in_ruleComposedStructureAssembly4703 = new BitSet(new long[]{0x1000000000000000L});
-        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly4724 = new BitSet(new long[]{0x000000000000C000L});
-        public static final BitSet FOLLOW_15_in_ruleComposedStructureAssembly4738 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleComposedStructureAssembly4752 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyContext_in_entryRuleAssemblyContext4788 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleAssemblyContext4798 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_49_in_ruleAssemblyContext4835 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyContext4856 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleAssemblyContext4868 = new BitSet(new long[]{0x0004000000000000L});
-        public static final BitSet FOLLOW_50_in_ruleAssemblyContext4880 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyContext4903 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleAssemblyContext4915 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleAssemblyConnector_in_entryRuleAssemblyConnector4951 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleAssemblyConnector4961 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_51_in_ruleAssemblyConnector4998 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector5019 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleAssemblyConnector5031 = new BitSet(new long[]{0x0010000000000000L});
-        public static final BitSet FOLLOW_52_in_ruleAssemblyConnector5043 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector5066 = new BitSet(new long[]{0x0020000000000000L});
-        public static final BitSet FOLLOW_53_in_ruleAssemblyConnector5078 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector5101 = new BitSet(new long[]{0x0040000000000000L});
-        public static final BitSet FOLLOW_54_in_ruleAssemblyConnector5113 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector5136 = new BitSet(new long[]{0x0080000000000000L});
-        public static final BitSet FOLLOW_55_in_ruleAssemblyConnector5148 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector5171 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleAssemblyConnector5183 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_entryRuleProvidedDelegationConnector5219 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleProvidedDelegationConnector5229 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_56_in_ruleProvidedDelegationConnector5266 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5287 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleProvidedDelegationConnector5299 = new BitSet(new long[]{0x0200000000000000L});
-        public static final BitSet FOLLOW_57_in_ruleProvidedDelegationConnector5311 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5334 = new BitSet(new long[]{0x0400000000000000L});
-        public static final BitSet FOLLOW_58_in_ruleProvidedDelegationConnector5346 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5369 = new BitSet(new long[]{0x0800000000000000L});
-        public static final BitSet FOLLOW_59_in_ruleProvidedDelegationConnector5381 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5404 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleProvidedDelegationConnector5416 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_entryRuleRequiredDelegationConnector5452 = new BitSet(new long[]{0x0000000000000000L});
-        public static final BitSet FOLLOW_EOF_in_entryRuleRequiredDelegationConnector5462 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_60_in_ruleRequiredDelegationConnector5499 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5520 = new BitSet(new long[]{0x0000000000001000L});
-        public static final BitSet FOLLOW_12_in_ruleRequiredDelegationConnector5532 = new BitSet(new long[]{0x0200000000000000L});
-        public static final BitSet FOLLOW_57_in_ruleRequiredDelegationConnector5544 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5567 = new BitSet(new long[]{0x2000000000000000L});
-        public static final BitSet FOLLOW_61_in_ruleRequiredDelegationConnector5579 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5602 = new BitSet(new long[]{0x4000000000000000L});
-        public static final BitSet FOLLOW_62_in_ruleRequiredDelegationConnector5614 = new BitSet(new long[]{0x0000000000000030L});
-        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5637 = new BitSet(new long[]{0x0000000000008000L});
-        public static final BitSet FOLLOW_15_in_ruleRequiredDelegationConnector5649 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_63_in_rulePrimitiveTypeEnum5699 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_64_in_rulePrimitiveTypeEnum5716 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_65_in_rulePrimitiveTypeEnum5733 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_66_in_rulePrimitiveTypeEnum5750 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_67_in_rulePrimitiveTypeEnum5767 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_68_in_rulePrimitiveTypeEnum5784 = new BitSet(new long[]{0x0000000000000002L});
-        public static final BitSet FOLLOW_69_in_rulePrimitiveTypeEnum5801 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_12_in_ruleRepository155 = new BitSet(new long[]{0x0000016025106000L});
+        public static final BitSet FOLLOW_ruleDataType_in_ruleRepository177 = new BitSet(new long[]{0x0000016025106000L});
+        public static final BitSet FOLLOW_ruleInterface_in_ruleRepository204 = new BitSet(new long[]{0x0000016025106000L});
+        public static final BitSet FOLLOW_ruleRepositoryComponent_in_ruleRepository231 = new BitSet(new long[]{0x0000016025106000L});
+        public static final BitSet FOLLOW_13_in_ruleRepository245 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleDataType_in_entryRuleDataType281 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleDataType291 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleCollectionDataType_in_ruleDataType338 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleCompositeDataType_in_ruleDataType365 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rulePrimitiveDataType_in_ruleDataType392 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRepositoryComponent_in_entryRuleRepositoryComponent427 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleRepositoryComponent437 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRepositoryComponent_Impl_in_ruleRepositoryComponent484 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleBasicComponent_in_ruleRepositoryComponent511 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleCompositeComponent_in_ruleRepositoryComponent538 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleSubSystem_in_ruleRepositoryComponent565 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_entryRuleEString601 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleEString612 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_RULE_STRING_in_ruleEString652 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_RULE_ID_in_ruleEString678 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleInterface_in_entryRuleInterface723 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleInterface733 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_14_in_ruleInterface770 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleInterface791 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleInterface803 = new BitSet(new long[]{0x000000000008A000L});
+        public static final BitSet FOLLOW_15_in_ruleInterface816 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleInterface828 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleInterface851 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_17_in_ruleInterface864 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleInterface887 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_18_in_ruleInterface901 = new BitSet(new long[]{0x0000000000082000L});
+        public static final BitSet FOLLOW_19_in_ruleInterface916 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleInterface928 = new BitSet(new long[]{0x0000000400000030L});
+        public static final BitSet FOLLOW_ruleSignature_in_ruleInterface949 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_17_in_ruleInterface962 = new BitSet(new long[]{0x0000000400000030L});
+        public static final BitSet FOLLOW_ruleSignature_in_ruleInterface983 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_13_in_ruleInterface997 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleInterface1011 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRepositoryComponent_Impl_in_entryRuleRepositoryComponent_Impl1047 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleRepositoryComponent_Impl1057 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_20_in_ruleRepositoryComponent_Impl1094 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1115 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleRepositoryComponent_Impl1127 = new BitSet(new long[]{0x0000000000E02000L});
+        public static final BitSet FOLLOW_21_in_ruleRepositoryComponent_Impl1140 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleRepositoryComponent_Impl1152 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1175 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_17_in_ruleRepositoryComponent_Impl1188 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleRepositoryComponent_Impl1211 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_18_in_ruleRepositoryComponent_Impl1225 = new BitSet(new long[]{0x0000000000C02000L});
+        public static final BitSet FOLLOW_22_in_ruleRepositoryComponent_Impl1240 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleRepositoryComponent_Impl1252 = new BitSet(new long[]{0x0000000800000000L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1273 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_17_in_ruleRepositoryComponent_Impl1286 = new BitSet(new long[]{0x0000000800000000L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleRepositoryComponent_Impl1307 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_13_in_ruleRepositoryComponent_Impl1321 = new BitSet(new long[]{0x0000000000802000L});
+        public static final BitSet FOLLOW_23_in_ruleRepositoryComponent_Impl1336 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleRepositoryComponent_Impl1348 = new BitSet(new long[]{0x0000001000000000L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl1369 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_17_in_ruleRepositoryComponent_Impl1382 = new BitSet(new long[]{0x0000001000000000L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleRepositoryComponent_Impl1403 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_13_in_ruleRepositoryComponent_Impl1417 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleRepositoryComponent_Impl1431 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleCollectionDataType_in_entryRuleCollectionDataType1467 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleCollectionDataType1477 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_24_in_ruleCollectionDataType1514 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleCollectionDataType1535 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleCollectionDataType1547 = new BitSet(new long[]{0x0000000002000000L});
+        public static final BitSet FOLLOW_25_in_ruleCollectionDataType1559 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleCollectionDataType1582 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleCollectionDataType1594 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleCompositeDataType_in_entryRuleCompositeDataType1630 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleCompositeDataType1640 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_26_in_ruleCompositeDataType1677 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeDataType1698 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleCompositeDataType1710 = new BitSet(new long[]{0x0000000018002000L});
+        public static final BitSet FOLLOW_27_in_ruleCompositeDataType1723 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleCompositeDataType1735 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeDataType1758 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_17_in_ruleCompositeDataType1771 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeDataType1794 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_18_in_ruleCompositeDataType1808 = new BitSet(new long[]{0x0000000010002000L});
+        public static final BitSet FOLLOW_28_in_ruleCompositeDataType1823 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleCompositeDataType1835 = new BitSet(new long[]{0x0000000100000000L});
+        public static final BitSet FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType1856 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_17_in_ruleCompositeDataType1869 = new BitSet(new long[]{0x0000000100000000L});
+        public static final BitSet FOLLOW_ruleInnerDeclaration_in_ruleCompositeDataType1890 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_13_in_ruleCompositeDataType1904 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleCompositeDataType1918 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_rulePrimitiveDataType_in_entryRulePrimitiveDataType1954 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRulePrimitiveDataType1964 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_29_in_rulePrimitiveDataType2001 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_rulePrimitiveDataType2013 = new BitSet(new long[]{0x0000000040000000L});
+        public static final BitSet FOLLOW_30_in_rulePrimitiveDataType2025 = new BitSet(new long[]{0xF000000000000000L,0x0000000000000007L});
+        public static final BitSet FOLLOW_rulePrimitiveTypeEnum_in_rulePrimitiveDataType2046 = new BitSet(new long[]{0x0000000080000000L});
+        public static final BitSet FOLLOW_31_in_rulePrimitiveDataType2058 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_rulePrimitiveDataType2079 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_rulePrimitiveDataType2091 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleInnerDeclaration_in_entryRuleInnerDeclaration2127 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleInnerDeclaration2137 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_32_in_ruleInnerDeclaration2174 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleInnerDeclaration2195 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleInnerDeclaration2207 = new BitSet(new long[]{0x0000000200000000L});
+        public static final BitSet FOLLOW_33_in_ruleInnerDeclaration2219 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleInnerDeclaration2242 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleInnerDeclaration2254 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleSignature_in_entryRuleSignature2290 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleSignature2300 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleSignature2349 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_34_in_ruleSignature2367 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleSignature2389 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleSignature2401 = new BitSet(new long[]{0x0000000000040030L});
+        public static final BitSet FOLLOW_ruleParameter_in_ruleSignature2423 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_17_in_ruleSignature2436 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleParameter_in_ruleSignature2457 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_18_in_ruleSignature2473 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleParameter_in_entryRuleParameter2509 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleParameter2519 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleParameter2567 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleParameter2588 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_entryRuleProvidedRole2624 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleProvidedRole2634 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_35_in_ruleProvidedRole2680 = new BitSet(new long[]{0x0000000000000032L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedRole2704 = new BitSet(new long[]{0x0000000000020032L});
+        public static final BitSet FOLLOW_17_in_ruleProvidedRole2717 = new BitSet(new long[]{0x0000000000000032L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_entryRuleRequiredRole2757 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleRequiredRole2767 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_36_in_ruleRequiredRole2813 = new BitSet(new long[]{0x0000000000000032L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredRole2837 = new BitSet(new long[]{0x0000000000020032L});
+        public static final BitSet FOLLOW_17_in_ruleRequiredRole2850 = new BitSet(new long[]{0x0000000000000032L});
+        public static final BitSet FOLLOW_ruleBasicComponent_in_entryRuleBasicComponent2890 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleBasicComponent2900 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_37_in_ruleBasicComponent2937 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleBasicComponent2958 = new BitSet(new long[]{0x0000001800001000L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleBasicComponent2980 = new BitSet(new long[]{0x0000001000021000L});
+        public static final BitSet FOLLOW_17_in_ruleBasicComponent2993 = new BitSet(new long[]{0x0000000800000000L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleBasicComponent3014 = new BitSet(new long[]{0x0000001000021000L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleBasicComponent3040 = new BitSet(new long[]{0x0000000000021000L});
+        public static final BitSet FOLLOW_17_in_ruleBasicComponent3053 = new BitSet(new long[]{0x0000001000000000L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleBasicComponent3074 = new BitSet(new long[]{0x0000000000021000L});
+        public static final BitSet FOLLOW_12_in_ruleBasicComponent3090 = new BitSet(new long[]{0x0000000000202000L});
+        public static final BitSet FOLLOW_21_in_ruleBasicComponent3103 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleBasicComponent3115 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleBasicComponent3138 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_17_in_ruleBasicComponent3151 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleBasicComponent3174 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_18_in_ruleBasicComponent3188 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleBasicComponent3202 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleCompositeComponent_in_entryRuleCompositeComponent3238 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleCompositeComponent3248 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_38_in_ruleCompositeComponent3285 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeComponent3306 = new BitSet(new long[]{0x0000001800001000L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3328 = new BitSet(new long[]{0x0000001000021000L});
+        public static final BitSet FOLLOW_17_in_ruleCompositeComponent3341 = new BitSet(new long[]{0x0000000800000000L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleCompositeComponent3362 = new BitSet(new long[]{0x0000001000021000L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleCompositeComponent3388 = new BitSet(new long[]{0x0000000000021000L});
+        public static final BitSet FOLLOW_17_in_ruleCompositeComponent3401 = new BitSet(new long[]{0x0000001000000000L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleCompositeComponent3422 = new BitSet(new long[]{0x0000000000021000L});
+        public static final BitSet FOLLOW_12_in_ruleCompositeComponent3438 = new BitSet(new long[]{0x0000008000202000L});
+        public static final BitSet FOLLOW_21_in_ruleCompositeComponent3451 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleCompositeComponent3463 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeComponent3486 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_17_in_ruleCompositeComponent3499 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleCompositeComponent3522 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_18_in_ruleCompositeComponent3536 = new BitSet(new long[]{0x0000008000002000L});
+        public static final BitSet FOLLOW_39_in_ruleCompositeComponent3551 = new BitSet(new long[]{0x0000020000000000L});
+        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_ruleCompositeComponent3572 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleCompositeComponent3586 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleSubSystem_in_entryRuleSubSystem3622 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleSubSystem3632 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_40_in_ruleSubSystem3669 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleSubSystem3690 = new BitSet(new long[]{0x0000000000C01000L});
+        public static final BitSet FOLLOW_22_in_ruleSubSystem3703 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleSubSystem3715 = new BitSet(new long[]{0x0000000800000000L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleSubSystem3736 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_17_in_ruleSubSystem3749 = new BitSet(new long[]{0x0000000800000000L});
+        public static final BitSet FOLLOW_ruleProvidedRole_in_ruleSubSystem3770 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_13_in_ruleSubSystem3784 = new BitSet(new long[]{0x0000000000801000L});
+        public static final BitSet FOLLOW_23_in_ruleSubSystem3799 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleSubSystem3811 = new BitSet(new long[]{0x0000001000000000L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleSubSystem3832 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_17_in_ruleSubSystem3845 = new BitSet(new long[]{0x0000001000000000L});
+        public static final BitSet FOLLOW_ruleRequiredRole_in_ruleSubSystem3866 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_13_in_ruleSubSystem3880 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleSubSystem3894 = new BitSet(new long[]{0x0000008000202000L});
+        public static final BitSet FOLLOW_21_in_ruleSubSystem3907 = new BitSet(new long[]{0x0000000000010000L});
+        public static final BitSet FOLLOW_16_in_ruleSubSystem3919 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleSubSystem3942 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_17_in_ruleSubSystem3955 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleSubSystem3978 = new BitSet(new long[]{0x0000000000060000L});
+        public static final BitSet FOLLOW_18_in_ruleSubSystem3992 = new BitSet(new long[]{0x0000008000002000L});
+        public static final BitSet FOLLOW_39_in_ruleSubSystem4007 = new BitSet(new long[]{0x0000020000000000L});
+        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_ruleSubSystem4028 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleSubSystem4042 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleComposedStructureAssembly_in_entryRuleComposedStructureAssembly4078 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleComposedStructureAssembly4088 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_41_in_ruleComposedStructureAssembly4134 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4146 = new BitSet(new long[]{0x00003C0000002000L});
+        public static final BitSet FOLLOW_42_in_ruleComposedStructureAssembly4159 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4171 = new BitSet(new long[]{0x0000400000000000L});
+        public static final BitSet FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4192 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_17_in_ruleComposedStructureAssembly4205 = new BitSet(new long[]{0x0000400000000000L});
+        public static final BitSet FOLLOW_ruleAssemblyContext_in_ruleComposedStructureAssembly4226 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_13_in_ruleComposedStructureAssembly4240 = new BitSet(new long[]{0x0000380000002000L});
+        public static final BitSet FOLLOW_43_in_ruleComposedStructureAssembly4255 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4267 = new BitSet(new long[]{0x0001000000000000L});
+        public static final BitSet FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4288 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_17_in_ruleComposedStructureAssembly4301 = new BitSet(new long[]{0x0001000000000000L});
+        public static final BitSet FOLLOW_ruleAssemblyConnector_in_ruleComposedStructureAssembly4322 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_13_in_ruleComposedStructureAssembly4336 = new BitSet(new long[]{0x0000300000002000L});
+        public static final BitSet FOLLOW_44_in_ruleComposedStructureAssembly4351 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4363 = new BitSet(new long[]{0x0020000000000000L});
+        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly4384 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_17_in_ruleComposedStructureAssembly4397 = new BitSet(new long[]{0x0020000000000000L});
+        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_ruleComposedStructureAssembly4418 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_13_in_ruleComposedStructureAssembly4432 = new BitSet(new long[]{0x0000200000002000L});
+        public static final BitSet FOLLOW_45_in_ruleComposedStructureAssembly4447 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleComposedStructureAssembly4459 = new BitSet(new long[]{0x0200000000000000L});
+        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly4480 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_17_in_ruleComposedStructureAssembly4493 = new BitSet(new long[]{0x0200000000000000L});
+        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_ruleComposedStructureAssembly4514 = new BitSet(new long[]{0x0000000000022000L});
+        public static final BitSet FOLLOW_13_in_ruleComposedStructureAssembly4528 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleComposedStructureAssembly4542 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleAssemblyContext_in_entryRuleAssemblyContext4578 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleAssemblyContext4588 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_46_in_ruleAssemblyContext4625 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyContext4646 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleAssemblyContext4658 = new BitSet(new long[]{0x0000800000000000L});
+        public static final BitSet FOLLOW_47_in_ruleAssemblyContext4670 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyContext4693 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleAssemblyContext4705 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleAssemblyConnector_in_entryRuleAssemblyConnector4741 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleAssemblyConnector4751 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_48_in_ruleAssemblyConnector4788 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector4809 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleAssemblyConnector4821 = new BitSet(new long[]{0x0002000000000000L});
+        public static final BitSet FOLLOW_49_in_ruleAssemblyConnector4833 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector4856 = new BitSet(new long[]{0x0004000000000000L});
+        public static final BitSet FOLLOW_50_in_ruleAssemblyConnector4868 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector4891 = new BitSet(new long[]{0x0008000000000000L});
+        public static final BitSet FOLLOW_51_in_ruleAssemblyConnector4903 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector4926 = new BitSet(new long[]{0x0010000000000000L});
+        public static final BitSet FOLLOW_52_in_ruleAssemblyConnector4938 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleAssemblyConnector4961 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleAssemblyConnector4973 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleProvidedDelegationConnector_in_entryRuleProvidedDelegationConnector5009 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleProvidedDelegationConnector5019 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_53_in_ruleProvidedDelegationConnector5056 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5077 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleProvidedDelegationConnector5089 = new BitSet(new long[]{0x0040000000000000L});
+        public static final BitSet FOLLOW_54_in_ruleProvidedDelegationConnector5101 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5124 = new BitSet(new long[]{0x0080000000000000L});
+        public static final BitSet FOLLOW_55_in_ruleProvidedDelegationConnector5136 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5159 = new BitSet(new long[]{0x0100000000000000L});
+        public static final BitSet FOLLOW_56_in_ruleProvidedDelegationConnector5171 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleProvidedDelegationConnector5194 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleProvidedDelegationConnector5206 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_ruleRequiredDelegationConnector_in_entryRuleRequiredDelegationConnector5242 = new BitSet(new long[]{0x0000000000000000L});
+        public static final BitSet FOLLOW_EOF_in_entryRuleRequiredDelegationConnector5252 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_57_in_ruleRequiredDelegationConnector5289 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5310 = new BitSet(new long[]{0x0000000000001000L});
+        public static final BitSet FOLLOW_12_in_ruleRequiredDelegationConnector5322 = new BitSet(new long[]{0x0040000000000000L});
+        public static final BitSet FOLLOW_54_in_ruleRequiredDelegationConnector5334 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5357 = new BitSet(new long[]{0x0400000000000000L});
+        public static final BitSet FOLLOW_58_in_ruleRequiredDelegationConnector5369 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5392 = new BitSet(new long[]{0x0800000000000000L});
+        public static final BitSet FOLLOW_59_in_ruleRequiredDelegationConnector5404 = new BitSet(new long[]{0x0000000000000030L});
+        public static final BitSet FOLLOW_ruleEString_in_ruleRequiredDelegationConnector5427 = new BitSet(new long[]{0x0000000000002000L});
+        public static final BitSet FOLLOW_13_in_ruleRequiredDelegationConnector5439 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_60_in_rulePrimitiveTypeEnum5489 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_61_in_rulePrimitiveTypeEnum5506 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_62_in_rulePrimitiveTypeEnum5523 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_63_in_rulePrimitiveTypeEnum5540 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_64_in_rulePrimitiveTypeEnum5557 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_65_in_rulePrimitiveTypeEnum5574 = new BitSet(new long[]{0x0000000000000002L});
+        public static final BitSet FOLLOW_66_in_rulePrimitiveTypeEnum5591 = new BitSet(new long[]{0x0000000000000002L});
     }
 
 
diff --git a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/services/MyDslTestGrammarAccess.java b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/services/MyDslTestGrammarAccess.java
index 233aa049c66258cf8ccd9fef4e8304a7a2576ef2..2451984239a8abcb0ad583a76e860419ce68990d 100644
--- a/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/services/MyDslTestGrammarAccess.java
+++ b/org.xtext.example.mydslTest/src-gen/org/xtext/example/mydsl/services/MyDslTestGrammarAccess.java
@@ -7,6 +7,8 @@ package org.xtext.example.mydsl.services;
 import com.google.inject.Singleton;
 import com.google.inject.Inject;
 
+import java.util.List;
+
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.service.GrammarProvider;
 import org.eclipse.xtext.service.AbstractElementFinder.*;
@@ -24,47 +26,37 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
 		private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
-		private final Keyword cDatatypesKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
-		private final Assignment cDatatypesAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2);
-		private final RuleCall cDatatypesDataTypeParserRuleCall_3_2_0 = (RuleCall)cDatatypesAssignment_3_2.eContents().get(0);
-		private final Group cGroup_3_3 = (Group)cGroup_3.eContents().get(3);
-		private final Keyword cCommaKeyword_3_3_0 = (Keyword)cGroup_3_3.eContents().get(0);
-		private final Assignment cDatatypesAssignment_3_3_1 = (Assignment)cGroup_3_3.eContents().get(1);
-		private final RuleCall cDatatypesDataTypeParserRuleCall_3_3_1_0 = (RuleCall)cDatatypesAssignment_3_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_3_4 = (Keyword)cGroup_3.eContents().get(4);
-		private final Group cGroup_4 = (Group)cGroup.eContents().get(4);
-		private final Keyword cInterfacesKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1);
-		private final Assignment cInterfacesAssignment_4_2 = (Assignment)cGroup_4.eContents().get(2);
-		private final RuleCall cInterfacesInterfaceParserRuleCall_4_2_0 = (RuleCall)cInterfacesAssignment_4_2.eContents().get(0);
-		private final Group cGroup_4_3 = (Group)cGroup_4.eContents().get(3);
-		private final Keyword cCommaKeyword_4_3_0 = (Keyword)cGroup_4_3.eContents().get(0);
-		private final Assignment cInterfacesAssignment_4_3_1 = (Assignment)cGroup_4_3.eContents().get(1);
-		private final RuleCall cInterfacesInterfaceParserRuleCall_4_3_1_0 = (RuleCall)cInterfacesAssignment_4_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_4_4 = (Keyword)cGroup_4.eContents().get(4);
-		private final Group cGroup_5 = (Group)cGroup.eContents().get(5);
-		private final Keyword cComponentsKeyword_5_0 = (Keyword)cGroup_5.eContents().get(0);
-		private final Keyword cLeftCurlyBracketKeyword_5_1 = (Keyword)cGroup_5.eContents().get(1);
-		private final Assignment cComponentsAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2);
-		private final RuleCall cComponentsRepositoryComponentParserRuleCall_5_2_0 = (RuleCall)cComponentsAssignment_5_2.eContents().get(0);
-		private final Group cGroup_5_3 = (Group)cGroup_5.eContents().get(3);
-		private final Keyword cCommaKeyword_5_3_0 = (Keyword)cGroup_5_3.eContents().get(0);
-		private final Assignment cComponentsAssignment_5_3_1 = (Assignment)cGroup_5_3.eContents().get(1);
-		private final RuleCall cComponentsRepositoryComponentParserRuleCall_5_3_1_0 = (RuleCall)cComponentsAssignment_5_3_1.eContents().get(0);
-		private final Keyword cRightCurlyBracketKeyword_5_4 = (Keyword)cGroup_5.eContents().get(4);
-		private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
+		private final Alternatives cAlternatives_3 = (Alternatives)cGroup.eContents().get(3);
+		private final Assignment cDatatypesAssignment_3_0 = (Assignment)cAlternatives_3.eContents().get(0);
+		private final RuleCall cDatatypesDataTypeParserRuleCall_3_0_0 = (RuleCall)cDatatypesAssignment_3_0.eContents().get(0);
+		private final Assignment cInterfacesAssignment_3_1 = (Assignment)cAlternatives_3.eContents().get(1);
+		private final RuleCall cInterfacesInterfaceParserRuleCall_3_1_0 = (RuleCall)cInterfacesAssignment_3_1.eContents().get(0);
+		private final Assignment cComponentsAssignment_3_2 = (Assignment)cAlternatives_3.eContents().get(2);
+		private final RuleCall cComponentsRepositoryComponentParserRuleCall_3_2_0 = (RuleCall)cComponentsAssignment_3_2.eContents().get(0);
+		private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
 		
 		//Repository returns repository::Repository:
-		//	"Repository" name=EString "{" ("datatypes" "{" datatypes+=DataType ("," datatypes+=DataType)* "}")? ("interfaces" "{"
-		//	interfaces+=Interface ("," interfaces+=Interface)* "}")? ("components" "{" components+=RepositoryComponent (","
-		//	components+=RepositoryComponent)* "}")? "}";
+		//
+		//	"Repository" name=EString "{" (datatypes+=DataType | interfaces+=Interface | components+=RepositoryComponent)*
+		//
+		//	/ *
+		//		('datatypes' '{' datatypes+=DataType ( "," datatypes+=DataType)* '}' )? 
+		//		('interfaces' '{' interfaces+=Interface ( "," interfaces+=Interface)* '}' )? 
+		//		('components' '{' components+=RepositoryComponent ( "," components+=RepositoryComponent)* '}' )?
+		// * /
+		//
+		//	"}";
 		public ParserRule getRule() { return rule; }
 
-		//"Repository" name=EString "{" ("datatypes" "{" datatypes+=DataType ("," datatypes+=DataType)* "}")? ("interfaces" "{"
-		//interfaces+=Interface ("," interfaces+=Interface)* "}")? ("components" "{" components+=RepositoryComponent (","
-		//components+=RepositoryComponent)* "}")? "}"
+		//"Repository" name=EString "{" (datatypes+=DataType | interfaces+=Interface | components+=RepositoryComponent)*
+		//
+		/// *
+		//		('datatypes' '{' datatypes+=DataType ( "," datatypes+=DataType)* '}' )? 
+		//		('interfaces' '{' interfaces+=Interface ( "," interfaces+=Interface)* '}' )? 
+		//		('components' '{' components+=RepositoryComponent ( "," components+=RepositoryComponent)* '}' )?
+		// * /
+		//
+		//"}"
 		public Group getGroup() { return cGroup; }
 
 		//"Repository"
@@ -79,98 +71,35 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		//"{"
 		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
 
-		//("datatypes" "{" datatypes+=DataType ("," datatypes+=DataType)* "}")?
-		public Group getGroup_3() { return cGroup_3; }
-
-		//"datatypes"
-		public Keyword getDatatypesKeyword_3_0() { return cDatatypesKeyword_3_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_3_1() { return cLeftCurlyBracketKeyword_3_1; }
+		//(datatypes+=DataType | interfaces+=Interface | components+=RepositoryComponent)*
+		public Alternatives getAlternatives_3() { return cAlternatives_3; }
 
 		//datatypes+=DataType
-		public Assignment getDatatypesAssignment_3_2() { return cDatatypesAssignment_3_2; }
+		public Assignment getDatatypesAssignment_3_0() { return cDatatypesAssignment_3_0; }
 
 		//DataType
-		public RuleCall getDatatypesDataTypeParserRuleCall_3_2_0() { return cDatatypesDataTypeParserRuleCall_3_2_0; }
-
-		//("," datatypes+=DataType)*
-		public Group getGroup_3_3() { return cGroup_3_3; }
-
-		//","
-		public Keyword getCommaKeyword_3_3_0() { return cCommaKeyword_3_3_0; }
-
-		//datatypes+=DataType
-		public Assignment getDatatypesAssignment_3_3_1() { return cDatatypesAssignment_3_3_1; }
-
-		//DataType
-		public RuleCall getDatatypesDataTypeParserRuleCall_3_3_1_0() { return cDatatypesDataTypeParserRuleCall_3_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_3_4() { return cRightCurlyBracketKeyword_3_4; }
-
-		//("interfaces" "{" interfaces+=Interface ("," interfaces+=Interface)* "}")?
-		public Group getGroup_4() { return cGroup_4; }
-
-		//"interfaces"
-		public Keyword getInterfacesKeyword_4_0() { return cInterfacesKeyword_4_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_4_1() { return cLeftCurlyBracketKeyword_4_1; }
+		public RuleCall getDatatypesDataTypeParserRuleCall_3_0_0() { return cDatatypesDataTypeParserRuleCall_3_0_0; }
 
 		//interfaces+=Interface
-		public Assignment getInterfacesAssignment_4_2() { return cInterfacesAssignment_4_2; }
+		public Assignment getInterfacesAssignment_3_1() { return cInterfacesAssignment_3_1; }
 
 		//Interface
-		public RuleCall getInterfacesInterfaceParserRuleCall_4_2_0() { return cInterfacesInterfaceParserRuleCall_4_2_0; }
-
-		//("," interfaces+=Interface)*
-		public Group getGroup_4_3() { return cGroup_4_3; }
-
-		//","
-		public Keyword getCommaKeyword_4_3_0() { return cCommaKeyword_4_3_0; }
-
-		//interfaces+=Interface
-		public Assignment getInterfacesAssignment_4_3_1() { return cInterfacesAssignment_4_3_1; }
-
-		//Interface
-		public RuleCall getInterfacesInterfaceParserRuleCall_4_3_1_0() { return cInterfacesInterfaceParserRuleCall_4_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_4_4() { return cRightCurlyBracketKeyword_4_4; }
-
-		//("components" "{" components+=RepositoryComponent ("," components+=RepositoryComponent)* "}")?
-		public Group getGroup_5() { return cGroup_5; }
-
-		//"components"
-		public Keyword getComponentsKeyword_5_0() { return cComponentsKeyword_5_0; }
-
-		//"{"
-		public Keyword getLeftCurlyBracketKeyword_5_1() { return cLeftCurlyBracketKeyword_5_1; }
+		public RuleCall getInterfacesInterfaceParserRuleCall_3_1_0() { return cInterfacesInterfaceParserRuleCall_3_1_0; }
 
 		//components+=RepositoryComponent
-		public Assignment getComponentsAssignment_5_2() { return cComponentsAssignment_5_2; }
+		public Assignment getComponentsAssignment_3_2() { return cComponentsAssignment_3_2; }
 
 		//RepositoryComponent
-		public RuleCall getComponentsRepositoryComponentParserRuleCall_5_2_0() { return cComponentsRepositoryComponentParserRuleCall_5_2_0; }
-
-		//("," components+=RepositoryComponent)*
-		public Group getGroup_5_3() { return cGroup_5_3; }
-
-		//","
-		public Keyword getCommaKeyword_5_3_0() { return cCommaKeyword_5_3_0; }
-
-		//components+=RepositoryComponent
-		public Assignment getComponentsAssignment_5_3_1() { return cComponentsAssignment_5_3_1; }
-
-		//RepositoryComponent
-		public RuleCall getComponentsRepositoryComponentParserRuleCall_5_3_1_0() { return cComponentsRepositoryComponentParserRuleCall_5_3_1_0; }
-
-		//"}"
-		public Keyword getRightCurlyBracketKeyword_5_4() { return cRightCurlyBracketKeyword_5_4; }
-
+		public RuleCall getComponentsRepositoryComponentParserRuleCall_3_2_0() { return cComponentsRepositoryComponentParserRuleCall_3_2_0; }
+
+		/// *
+		//		('datatypes' '{' datatypes+=DataType ( "," datatypes+=DataType)* '}' )? 
+		//		('interfaces' '{' interfaces+=Interface ( "," interfaces+=Interface)* '}' )? 
+		//		('components' '{' components+=RepositoryComponent ( "," components+=RepositoryComponent)* '}' )?
+		// * /
+		//
 		//"}"
-		public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
+		public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
 	}
 
 	public class DataTypeElements extends AbstractParserRuleElementFinder {
@@ -181,6 +110,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final RuleCall cPrimitiveDataTypeParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
 		
 		//DataType returns repository::DataType:
+		//
 		//	CollectionDataType | CompositeDataType | PrimitiveDataType;
 		public ParserRule getRule() { return rule; }
 
@@ -206,6 +136,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final RuleCall cSubSystemParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
 		
 		//RepositoryComponent returns repository::RepositoryComponent:
+		//
 		//	RepositoryComponent_Impl | BasicComponent | CompositeComponent | SubSystem;
 		public ParserRule getRule() { return rule; }
 
@@ -232,6 +163,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final RuleCall cIDTerminalRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
 		
 		//EString returns ecore::EString:
+		//
 		//	STRING | ID;
 		public ParserRule getRule() { return rule; }
 
@@ -277,13 +209,18 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
 		
 		//Interface returns repository::Interface:
+		//
 		//	"Interface" name=EString "{" ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
+		//
 		//	parentInterfaces+=[repository::Interface|EString])* ")")? ("signatures" "{" signatures+=Signature (","
+		//
 		//	signatures+=Signature)* "}")? "}";
 		public ParserRule getRule() { return rule; }
 
 		//"Interface" name=EString "{" ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
+		//
 		//parentInterfaces+=[repository::Interface|EString])* ")")? ("signatures" "{" signatures+=Signature (","
+		//
 		//signatures+=Signature)* "}")? "}"
 		public Group getGroup() { return cGroup; }
 
@@ -300,6 +237,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
 
 		//("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
+		//
 		//parentInterfaces+=[repository::Interface|EString])* ")")?
 		public Group getGroup_3() { return cGroup_3; }
 
@@ -412,16 +350,23 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
 		
 		//RepositoryComponent_Impl returns repository::RepositoryComponent:
+		//
 		//	"RepositoryComponent" name=EString "{" ("relationship" "(" relationship+=[Relationship|EString] (","
+		//
 		//	relationship+=[Relationship|EString])* ")")? ("providedRoles" "{" providedRoles+=ProvidedRole (","
+		//
 		//	providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole (","
+		//
 		//	requiredRoles+=RequiredRole)* "}")? "}";
 		public ParserRule getRule() { return rule; }
 
 		//"RepositoryComponent" name=EString "{" ("relationship" "(" relationship+=[Relationship|EString] (","
+		//
 		//relationship+=[Relationship|EString])* ")")? ("providedRoles" "{" providedRoles+=ProvidedRole (","
-		//providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*
-		//"}")? "}"
+		//
+		//providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole (","
+		//
+		//requiredRoles+=RequiredRole)* "}")? "}"
 		public Group getGroup() { return cGroup; }
 
 		//"RepositoryComponent"
@@ -550,6 +495,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
 		
 		//CollectionDataType returns repository::CollectionDataType:
+		//
 		//	"CollectionDataType" name=EString "{" "innerType" innerType=[repository::DataType|EString] "}";
 		public ParserRule getRule() { return rule; }
 
@@ -616,13 +562,18 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
 		
 		//CompositeDataType returns repository::CompositeDataType:
+		//
 		//	"CompositeDataType" name=EString "{" ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
+		//
 		//	parentTypes+=[repository::CompositeDataType|EString])* ")")? ("innerDeclarations" "{"
+		//
 		//	innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")? "}";
 		public ParserRule getRule() { return rule; }
 
 		//"CompositeDataType" name=EString "{" ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
+		//
 		//parentTypes+=[repository::CompositeDataType|EString])* ")")? ("innerDeclarations" "{"
+		//
 		//innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")? "}"
 		public Group getGroup() { return cGroup; }
 
@@ -639,6 +590,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
 
 		//("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
+		//
 		//parentTypes+=[repository::CompositeDataType|EString])* ")")?
 		public Group getGroup_3() { return cGroup_3; }
 
@@ -723,6 +675,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
 		
 		//PrimitiveDataType returns repository::PrimitiveDataType:
+		//
 		//	"PrimitiveDataType" "{" "type" type=PrimitiveTypeEnum "ref" name=EString "}";
 		public ParserRule getRule() { return rule; }
 
@@ -771,6 +724,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
 		
 		//InnerDeclaration returns repository::InnerDeclaration:
+		//
 		//	"InnerDeclaration" name=EString "{" "dataType" dataType=[repository::DataType|EString] "}";
 		public ParserRule getRule() { return rule; }
 
@@ -826,11 +780,14 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightParenthesisKeyword_4 = (Keyword)cGroup.eContents().get(4);
 		
 		//Signature returns repository::Signature:
+		//
 		//	(returnType=[repository::DataType|EString] | "void") name=EString "(" (parameters+=Parameter (","
+		//
 		//	parameters+=Parameter)*)? ")";
 		public ParserRule getRule() { return rule; }
 
 		//(returnType=[repository::DataType|EString] | "void") name=EString "(" (parameters+=Parameter (","
+		//
 		//parameters+=Parameter)*)? ")"
 		public Group getGroup() { return cGroup; }
 
@@ -893,6 +850,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final RuleCall cNameEStringParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
 		
 		//Parameter returns repository::Parameter:
+		//
 		//	dataType=[repository::DataType|EString] name=EString;
 		public ParserRule getRule() { return rule; }
 
@@ -919,7 +877,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "ProvidedRole");
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Action cProvidedRoleAction_0 = (Action)cGroup.eContents().get(0);
-		private final Keyword cProvidesKeyword_1 = (Keyword)cGroup.eContents().get(1);
+		private final Keyword cProvidedRoleKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
 		private final Assignment cInterfaceAssignment_2_0 = (Assignment)cGroup_2.eContents().get(0);
 		private final CrossReference cInterfaceInterfaceCrossReference_2_0_0 = (CrossReference)cInterfaceAssignment_2_0.eContents().get(0);
@@ -927,22 +885,23 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cCommaKeyword_2_1 = (Keyword)cGroup_2.eContents().get(1);
 		
 		//ProvidedRole returns repository::ProvidedRole:
-		//	{repository::ProvidedRole} "provides" (interface+=[repository::Interface|EString] ","?)*;
+		//
+		//	{repository::ProvidedRole} "ProvidedRole" (interface=[repository::Interface|EString] ","?)*;
 		public ParserRule getRule() { return rule; }
 
-		//{repository::ProvidedRole} "provides" (interface+=[repository::Interface|EString] ","?)*
+		//{repository::ProvidedRole} "ProvidedRole" (interface=[repository::Interface|EString] ","?)*
 		public Group getGroup() { return cGroup; }
 
 		//{repository::ProvidedRole}
 		public Action getProvidedRoleAction_0() { return cProvidedRoleAction_0; }
 
-		//"provides"
-		public Keyword getProvidesKeyword_1() { return cProvidesKeyword_1; }
+		//"ProvidedRole"
+		public Keyword getProvidedRoleKeyword_1() { return cProvidedRoleKeyword_1; }
 
-		//(interface+=[repository::Interface|EString] ","?)*
+		//(interface=[repository::Interface|EString] ","?)*
 		public Group getGroup_2() { return cGroup_2; }
 
-		//interface+=[repository::Interface|EString]
+		//interface=[repository::Interface|EString]
 		public Assignment getInterfaceAssignment_2_0() { return cInterfaceAssignment_2_0; }
 
 		//[repository::Interface|EString]
@@ -959,7 +918,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "RequiredRole");
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Action cRequiredRoleAction_0 = (Action)cGroup.eContents().get(0);
-		private final Keyword cRequiresKeyword_1 = (Keyword)cGroup.eContents().get(1);
+		private final Keyword cRequiredRoleKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Group cGroup_2 = (Group)cGroup.eContents().get(2);
 		private final Assignment cInterfaceAssignment_2_0 = (Assignment)cGroup_2.eContents().get(0);
 		private final CrossReference cInterfaceInterfaceCrossReference_2_0_0 = (CrossReference)cInterfaceAssignment_2_0.eContents().get(0);
@@ -967,22 +926,23 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cCommaKeyword_2_1 = (Keyword)cGroup_2.eContents().get(1);
 		
 		//RequiredRole returns repository::RequiredRole:
-		//	{repository::RequiredRole} "requires" (interface+=[repository::Interface|EString] ","?)*;
+		//
+		//	{repository::RequiredRole} "RequiredRole" (interface=[repository::Interface|EString] ","?)*;
 		public ParserRule getRule() { return rule; }
 
-		//{repository::RequiredRole} "requires" (interface+=[repository::Interface|EString] ","?)*
+		//{repository::RequiredRole} "RequiredRole" (interface=[repository::Interface|EString] ","?)*
 		public Group getGroup() { return cGroup; }
 
 		//{repository::RequiredRole}
 		public Action getRequiredRoleAction_0() { return cRequiredRoleAction_0; }
 
-		//"requires"
-		public Keyword getRequiresKeyword_1() { return cRequiresKeyword_1; }
+		//"RequiredRole"
+		public Keyword getRequiredRoleKeyword_1() { return cRequiredRoleKeyword_1; }
 
-		//(interface+=[repository::Interface|EString] ","?)*
+		//(interface=[repository::Interface|EString] ","?)*
 		public Group getGroup_2() { return cGroup_2; }
 
-		//interface+=[repository::Interface|EString]
+		//interface=[repository::Interface|EString]
 		public Assignment getInterfaceAssignment_2_0() { return cInterfaceAssignment_2_0; }
 
 		//[repository::Interface|EString]
@@ -1031,13 +991,18 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
 		
 		//BasicComponent returns repository::BasicComponent:
+		//
 		//	"BasicComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
+		//
 		//	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
+		//
 		//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? "}";
 		public ParserRule getRule() { return rule; }
 
 		//"BasicComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
+		//
 		//(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
+		//
 		//relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? "}"
 		public Group getGroup() { return cGroup; }
 
@@ -1175,15 +1140,22 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
 		
 		//CompositeComponent returns repository::CompositeComponent:
+		//
 		//	"CompositeComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
+		//
 		//	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
+		//
 		//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
+		//
 		//	assembly=ComposedStructureAssembly)? "}";
 		public ParserRule getRule() { return rule; }
 
 		//"CompositeComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
+		//
 		//(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
+		//
 		//relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
+		//
 		//assembly=ComposedStructureAssembly)? "}"
 		public Group getGroup() { return cGroup; }
 
@@ -1339,15 +1311,22 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
 		
 		//SubSystem returns repository::SubSystem:
+		//
 		//	"SubSystem" name=EString ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
+		//
 		//	("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")? "{" ("relationship" "("
+		//
 		//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
+		//
 		//	assembly=ComposedStructureAssembly)? "}";
 		public ParserRule getRule() { return rule; }
 
 		//"SubSystem" name=EString ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
+		//
 		//("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")? "{" ("relationship" "("
+		//
 		//relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
+		//
 		//assembly=ComposedStructureAssembly)? "}"
 		public Group getGroup() { return cGroup; }
 
@@ -1524,21 +1503,34 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
 		
 		//ComposedStructureAssembly returns repository_composites::ComposedStructureAssembly:
+		//
 		//	{repository_composites::ComposedStructureAssembly} "ComposedStructureAssembly" "{" ("assemblyContexts" "{"
+		//
 		//	assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")? ("assemblyConnectors" "{"
+		//
 		//	assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
+		//
 		//	("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
+		//
 		//	providedDelegationConnectors+=ProvidedDelegationConnector)* "}")? ("requiredDelegationConnectors" "{"
+		//
 		//	requiredDelegationConnectors+=RequiredDelegationConnector (","
+		//
 		//	requiredDelegationConnectors+=RequiredDelegationConnector)* "}")? "}";
 		public ParserRule getRule() { return rule; }
 
 		//{repository_composites::ComposedStructureAssembly} "ComposedStructureAssembly" "{" ("assemblyContexts" "{"
+		//
 		//assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")? ("assemblyConnectors" "{"
+		//
 		//assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
+		//
 		//("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
+		//
 		//providedDelegationConnectors+=ProvidedDelegationConnector)* "}")? ("requiredDelegationConnectors" "{"
+		//
 		//requiredDelegationConnectors+=RequiredDelegationConnector (","
+		//
 		//requiredDelegationConnectors+=RequiredDelegationConnector)* "}")? "}"
 		public Group getGroup() { return cGroup; }
 
@@ -1612,6 +1604,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		public Keyword getRightCurlyBracketKeyword_4_4() { return cRightCurlyBracketKeyword_4_4; }
 
 		//("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
+		//
 		//providedDelegationConnectors+=ProvidedDelegationConnector)* "}")?
 		public Group getGroup_5() { return cGroup_5; }
 
@@ -1643,6 +1636,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		public Keyword getRightCurlyBracketKeyword_5_4() { return cRightCurlyBracketKeyword_5_4; }
 
 		//("requiredDelegationConnectors" "{" requiredDelegationConnectors+=RequiredDelegationConnector (","
+		//
 		//requiredDelegationConnectors+=RequiredDelegationConnector)* "}")?
 		public Group getGroup_6() { return cGroup_6; }
 
@@ -1691,11 +1685,14 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
 		
 		//AssemblyContext returns repository_composites::AssemblyContext:
+		//
 		//	"AssemblyContext" name=EString "{" "encapsulatedComponent"
+		//
 		//	encapsulatedComponent=[repository::RepositoryComponent|EString] "}";
 		public ParserRule getRule() { return rule; }
 
 		//"AssemblyContext" name=EString "{" "encapsulatedComponent"
+		//
 		//encapsulatedComponent=[repository::RepositoryComponent|EString] "}"
 		public Group getGroup() { return cGroup; }
 
@@ -1753,15 +1750,22 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_11 = (Keyword)cGroup.eContents().get(11);
 		
 		//AssemblyConnector returns repository_composites::AssemblyConnector:
+		//
 		//	"AssemblyConnector" name=EString "{" "requiredRole" requiredRole=[repository::RequiredRole|EString] "providedRole"
+		//
 		//	providedRole=[repository::ProvidedRole|EString] "providingAssemblyContext"
+		//
 		//	providingAssemblyContext=[repository_composites::AssemblyContext|EString] "requiringAssemblyContext"
+		//
 		//	requiringAssemblyContext=[repository_composites::AssemblyContext|EString] "}";
 		public ParserRule getRule() { return rule; }
 
 		//"AssemblyConnector" name=EString "{" "requiredRole" requiredRole=[repository::RequiredRole|EString] "providedRole"
+		//
 		//providedRole=[repository::ProvidedRole|EString] "providingAssemblyContext"
+		//
 		//providingAssemblyContext=[repository_composites::AssemblyContext|EString] "requiringAssemblyContext"
+		//
 		//requiringAssemblyContext=[repository_composites::AssemblyContext|EString] "}"
 		public Group getGroup() { return cGroup; }
 
@@ -1851,15 +1855,22 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_9 = (Keyword)cGroup.eContents().get(9);
 		
 		//ProvidedDelegationConnector returns repository_composites::ProvidedDelegationConnector:
+		//
 		//	"ProvidedDelegationConnector" name=EString "{" "assemblyContext"
+		//
 		//	assemblyContext=[repository_composites::AssemblyContext|EString] "innerProvidedRole"
+		//
 		//	innerProvidedRole=[repository::ProvidedRole|EString] "outerProvidedRole"
+		//
 		//	outerProvidedRole=[repository::ProvidedRole|EString] "}";
 		public ParserRule getRule() { return rule; }
 
 		//"ProvidedDelegationConnector" name=EString "{" "assemblyContext"
+		//
 		//assemblyContext=[repository_composites::AssemblyContext|EString] "innerProvidedRole"
+		//
 		//innerProvidedRole=[repository::ProvidedRole|EString] "outerProvidedRole"
+		//
 		//outerProvidedRole=[repository::ProvidedRole|EString] "}"
 		public Group getGroup() { return cGroup; }
 
@@ -1937,15 +1948,22 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cRightCurlyBracketKeyword_9 = (Keyword)cGroup.eContents().get(9);
 		
 		//RequiredDelegationConnector returns repository_composites::RequiredDelegationConnector:
+		//
 		//	"RequiredDelegationConnector" name=EString "{" "assemblyContext"
+		//
 		//	assemblyContext=[repository_composites::AssemblyContext|EString] "innerRequiredRole"
+		//
 		//	innerRequiredRole=[repository::RequiredRole|EString] "outerRequiredRole"
+		//
 		//	outerRequiredRole=[repository::RequiredRole|EString] "}";
 		public ParserRule getRule() { return rule; }
 
 		//"RequiredDelegationConnector" name=EString "{" "assemblyContext"
+		//
 		//assemblyContext=[repository_composites::AssemblyContext|EString] "innerRequiredRole"
+		//
 		//innerRequiredRole=[repository::RequiredRole|EString] "outerRequiredRole"
+		//
 		//outerRequiredRole=[repository::RequiredRole|EString] "}"
 		public Group getGroup() { return cGroup; }
 
@@ -2021,6 +2039,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 		private final Keyword cLONGLONGKeyword_6_0 = (Keyword)cLONGEnumLiteralDeclaration_6.eContents().get(0);
 		
 		//enum PrimitiveTypeEnum returns repository::PrimitiveTypeEnum:
+		//
 		//	INT | STRING | BOOL | DOUBLE | CHAR | BYTE | LONG;
 		public EnumRule getRule() { return rule; }
 
@@ -2094,19 +2113,36 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	private ProvidedDelegationConnectorElements pProvidedDelegationConnector;
 	private RequiredDelegationConnectorElements pRequiredDelegationConnector;
 	
-	private final GrammarProvider grammarProvider;
+	private final Grammar grammar;
 
 	private TerminalsGrammarAccess gaTerminals;
 
 	@Inject
 	public MyDslTestGrammarAccess(GrammarProvider grammarProvider,
 		TerminalsGrammarAccess gaTerminals) {
-		this.grammarProvider = grammarProvider;
+		this.grammar = internalFindGrammar(grammarProvider);
 		this.gaTerminals = gaTerminals;
 	}
 	
-	public Grammar getGrammar() {	
-		return grammarProvider.getGrammar(this);
+	protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
+		Grammar grammar = grammarProvider.getGrammar(this);
+		while (grammar != null) {
+			if ("org.xtext.example.mydsl.MyDslTest".equals(grammar.getName())) {
+				return grammar;
+			}
+			List<Grammar> grammars = grammar.getUsedGrammars();
+			if (!grammars.isEmpty()) {
+				grammar = grammars.iterator().next();
+			} else {
+				return null;
+			}
+		}
+		return grammar;
+	}
+	
+	
+	public Grammar getGrammar() {
+		return grammar;
 	}
 	
 
@@ -2116,9 +2152,16 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 
 	
 	//Repository returns repository::Repository:
-	//	"Repository" name=EString "{" ("datatypes" "{" datatypes+=DataType ("," datatypes+=DataType)* "}")? ("interfaces" "{"
-	//	interfaces+=Interface ("," interfaces+=Interface)* "}")? ("components" "{" components+=RepositoryComponent (","
-	//	components+=RepositoryComponent)* "}")? "}";
+	//
+	//	"Repository" name=EString "{" (datatypes+=DataType | interfaces+=Interface | components+=RepositoryComponent)*
+	//
+	//	/ *
+	//		('datatypes' '{' datatypes+=DataType ( "," datatypes+=DataType)* '}' )? 
+	//		('interfaces' '{' interfaces+=Interface ( "," interfaces+=Interface)* '}' )? 
+	//		('components' '{' components+=RepositoryComponent ( "," components+=RepositoryComponent)* '}' )?
+	// * /
+	//
+	//	"}";
 	public RepositoryElements getRepositoryAccess() {
 		return (pRepository != null) ? pRepository : (pRepository = new RepositoryElements());
 	}
@@ -2128,6 +2171,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//DataType returns repository::DataType:
+	//
 	//	CollectionDataType | CompositeDataType | PrimitiveDataType;
 	public DataTypeElements getDataTypeAccess() {
 		return (pDataType != null) ? pDataType : (pDataType = new DataTypeElements());
@@ -2138,6 +2182,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//RepositoryComponent returns repository::RepositoryComponent:
+	//
 	//	RepositoryComponent_Impl | BasicComponent | CompositeComponent | SubSystem;
 	public RepositoryComponentElements getRepositoryComponentAccess() {
 		return (pRepositoryComponent != null) ? pRepositoryComponent : (pRepositoryComponent = new RepositoryComponentElements());
@@ -2148,6 +2193,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//EString returns ecore::EString:
+	//
 	//	STRING | ID;
 	public EStringElements getEStringAccess() {
 		return (pEString != null) ? pEString : (pEString = new EStringElements());
@@ -2158,8 +2204,11 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//Interface returns repository::Interface:
+	//
 	//	"Interface" name=EString "{" ("parentInterfaces" "(" parentInterfaces+=[repository::Interface|EString] (","
+	//
 	//	parentInterfaces+=[repository::Interface|EString])* ")")? ("signatures" "{" signatures+=Signature (","
+	//
 	//	signatures+=Signature)* "}")? "}";
 	public InterfaceElements getInterfaceAccess() {
 		return (pInterface != null) ? pInterface : (pInterface = new InterfaceElements());
@@ -2170,9 +2219,13 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//RepositoryComponent_Impl returns repository::RepositoryComponent:
+	//
 	//	"RepositoryComponent" name=EString "{" ("relationship" "(" relationship+=[Relationship|EString] (","
+	//
 	//	relationship+=[Relationship|EString])* ")")? ("providedRoles" "{" providedRoles+=ProvidedRole (","
+	//
 	//	providedRoles+=ProvidedRole)* "}")? ("requiredRoles" "{" requiredRoles+=RequiredRole (","
+	//
 	//	requiredRoles+=RequiredRole)* "}")? "}";
 	public RepositoryComponent_ImplElements getRepositoryComponent_ImplAccess() {
 		return (pRepositoryComponent_Impl != null) ? pRepositoryComponent_Impl : (pRepositoryComponent_Impl = new RepositoryComponent_ImplElements());
@@ -2183,6 +2236,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//CollectionDataType returns repository::CollectionDataType:
+	//
 	//	"CollectionDataType" name=EString "{" "innerType" innerType=[repository::DataType|EString] "}";
 	public CollectionDataTypeElements getCollectionDataTypeAccess() {
 		return (pCollectionDataType != null) ? pCollectionDataType : (pCollectionDataType = new CollectionDataTypeElements());
@@ -2193,8 +2247,11 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//CompositeDataType returns repository::CompositeDataType:
+	//
 	//	"CompositeDataType" name=EString "{" ("parentTypes" "(" parentTypes+=[repository::CompositeDataType|EString] (","
+	//
 	//	parentTypes+=[repository::CompositeDataType|EString])* ")")? ("innerDeclarations" "{"
+	//
 	//	innerDeclarations+=InnerDeclaration ("," innerDeclarations+=InnerDeclaration)* "}")? "}";
 	public CompositeDataTypeElements getCompositeDataTypeAccess() {
 		return (pCompositeDataType != null) ? pCompositeDataType : (pCompositeDataType = new CompositeDataTypeElements());
@@ -2205,6 +2262,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//PrimitiveDataType returns repository::PrimitiveDataType:
+	//
 	//	"PrimitiveDataType" "{" "type" type=PrimitiveTypeEnum "ref" name=EString "}";
 	public PrimitiveDataTypeElements getPrimitiveDataTypeAccess() {
 		return (pPrimitiveDataType != null) ? pPrimitiveDataType : (pPrimitiveDataType = new PrimitiveDataTypeElements());
@@ -2215,6 +2273,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//InnerDeclaration returns repository::InnerDeclaration:
+	//
 	//	"InnerDeclaration" name=EString "{" "dataType" dataType=[repository::DataType|EString] "}";
 	public InnerDeclarationElements getInnerDeclarationAccess() {
 		return (pInnerDeclaration != null) ? pInnerDeclaration : (pInnerDeclaration = new InnerDeclarationElements());
@@ -2225,6 +2284,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//enum PrimitiveTypeEnum returns repository::PrimitiveTypeEnum:
+	//
 	//	INT | STRING | BOOL | DOUBLE | CHAR | BYTE | LONG;
 	public PrimitiveTypeEnumElements getPrimitiveTypeEnumAccess() {
 		return (unknownRulePrimitiveTypeEnum != null) ? unknownRulePrimitiveTypeEnum : (unknownRulePrimitiveTypeEnum = new PrimitiveTypeEnumElements());
@@ -2235,7 +2295,9 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//Signature returns repository::Signature:
+	//
 	//	(returnType=[repository::DataType|EString] | "void") name=EString "(" (parameters+=Parameter (","
+	//
 	//	parameters+=Parameter)*)? ")";
 	public SignatureElements getSignatureAccess() {
 		return (pSignature != null) ? pSignature : (pSignature = new SignatureElements());
@@ -2246,6 +2308,7 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//Parameter returns repository::Parameter:
+	//
 	//	dataType=[repository::DataType|EString] name=EString;
 	public ParameterElements getParameterAccess() {
 		return (pParameter != null) ? pParameter : (pParameter = new ParameterElements());
@@ -2256,7 +2319,8 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//ProvidedRole returns repository::ProvidedRole:
-	//	{repository::ProvidedRole} "provides" (interface+=[repository::Interface|EString] ","?)*;
+	//
+	//	{repository::ProvidedRole} "ProvidedRole" (interface=[repository::Interface|EString] ","?)*;
 	public ProvidedRoleElements getProvidedRoleAccess() {
 		return (pProvidedRole != null) ? pProvidedRole : (pProvidedRole = new ProvidedRoleElements());
 	}
@@ -2266,7 +2330,8 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//RequiredRole returns repository::RequiredRole:
-	//	{repository::RequiredRole} "requires" (interface+=[repository::Interface|EString] ","?)*;
+	//
+	//	{repository::RequiredRole} "RequiredRole" (interface=[repository::Interface|EString] ","?)*;
 	public RequiredRoleElements getRequiredRoleAccess() {
 		return (pRequiredRole != null) ? pRequiredRole : (pRequiredRole = new RequiredRoleElements());
 	}
@@ -2276,8 +2341,11 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//BasicComponent returns repository::BasicComponent:
+	//
 	//	"BasicComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
+	//
 	//	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
+	//
 	//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? "}";
 	public BasicComponentElements getBasicComponentAccess() {
 		return (pBasicComponent != null) ? pBasicComponent : (pBasicComponent = new BasicComponentElements());
@@ -2288,9 +2356,13 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//CompositeComponent returns repository::CompositeComponent:
+	//
 	//	"CompositeComponent" name=EString (providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)*)?
+	//
 	//	(requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)*)? "{" ("relationship" "("
+	//
 	//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
+	//
 	//	assembly=ComposedStructureAssembly)? "}";
 	public CompositeComponentElements getCompositeComponentAccess() {
 		return (pCompositeComponent != null) ? pCompositeComponent : (pCompositeComponent = new CompositeComponentElements());
@@ -2301,9 +2373,13 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//SubSystem returns repository::SubSystem:
+	//
 	//	"SubSystem" name=EString ("providedRoles" "{" providedRoles+=ProvidedRole ("," providedRoles+=ProvidedRole)* "}")?
+	//
 	//	("requiredRoles" "{" requiredRoles+=RequiredRole ("," requiredRoles+=RequiredRole)* "}")? "{" ("relationship" "("
+	//
 	//	relationship+=[Relationship|EString] ("," relationship+=[Relationship|EString])* ")")? ("assembly"
+	//
 	//	assembly=ComposedStructureAssembly)? "}";
 	public SubSystemElements getSubSystemAccess() {
 		return (pSubSystem != null) ? pSubSystem : (pSubSystem = new SubSystemElements());
@@ -2314,12 +2390,19 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//ComposedStructureAssembly returns repository_composites::ComposedStructureAssembly:
+	//
 	//	{repository_composites::ComposedStructureAssembly} "ComposedStructureAssembly" "{" ("assemblyContexts" "{"
+	//
 	//	assemblyContexts+=AssemblyContext ("," assemblyContexts+=AssemblyContext)* "}")? ("assemblyConnectors" "{"
+	//
 	//	assemblyConnectors+=AssemblyConnector ("," assemblyConnectors+=AssemblyConnector)* "}")?
+	//
 	//	("providedDelegationConnectors" "{" providedDelegationConnectors+=ProvidedDelegationConnector (","
+	//
 	//	providedDelegationConnectors+=ProvidedDelegationConnector)* "}")? ("requiredDelegationConnectors" "{"
+	//
 	//	requiredDelegationConnectors+=RequiredDelegationConnector (","
+	//
 	//	requiredDelegationConnectors+=RequiredDelegationConnector)* "}")? "}";
 	public ComposedStructureAssemblyElements getComposedStructureAssemblyAccess() {
 		return (pComposedStructureAssembly != null) ? pComposedStructureAssembly : (pComposedStructureAssembly = new ComposedStructureAssemblyElements());
@@ -2330,7 +2413,9 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//AssemblyContext returns repository_composites::AssemblyContext:
+	//
 	//	"AssemblyContext" name=EString "{" "encapsulatedComponent"
+	//
 	//	encapsulatedComponent=[repository::RepositoryComponent|EString] "}";
 	public AssemblyContextElements getAssemblyContextAccess() {
 		return (pAssemblyContext != null) ? pAssemblyContext : (pAssemblyContext = new AssemblyContextElements());
@@ -2341,9 +2426,13 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//AssemblyConnector returns repository_composites::AssemblyConnector:
+	//
 	//	"AssemblyConnector" name=EString "{" "requiredRole" requiredRole=[repository::RequiredRole|EString] "providedRole"
+	//
 	//	providedRole=[repository::ProvidedRole|EString] "providingAssemblyContext"
+	//
 	//	providingAssemblyContext=[repository_composites::AssemblyContext|EString] "requiringAssemblyContext"
+	//
 	//	requiringAssemblyContext=[repository_composites::AssemblyContext|EString] "}";
 	public AssemblyConnectorElements getAssemblyConnectorAccess() {
 		return (pAssemblyConnector != null) ? pAssemblyConnector : (pAssemblyConnector = new AssemblyConnectorElements());
@@ -2354,9 +2443,13 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//ProvidedDelegationConnector returns repository_composites::ProvidedDelegationConnector:
+	//
 	//	"ProvidedDelegationConnector" name=EString "{" "assemblyContext"
+	//
 	//	assemblyContext=[repository_composites::AssemblyContext|EString] "innerProvidedRole"
+	//
 	//	innerProvidedRole=[repository::ProvidedRole|EString] "outerProvidedRole"
+	//
 	//	outerProvidedRole=[repository::ProvidedRole|EString] "}";
 	public ProvidedDelegationConnectorElements getProvidedDelegationConnectorAccess() {
 		return (pProvidedDelegationConnector != null) ? pProvidedDelegationConnector : (pProvidedDelegationConnector = new ProvidedDelegationConnectorElements());
@@ -2367,9 +2460,13 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//RequiredDelegationConnector returns repository_composites::RequiredDelegationConnector:
+	//
 	//	"RequiredDelegationConnector" name=EString "{" "assemblyContext"
+	//
 	//	assemblyContext=[repository_composites::AssemblyContext|EString] "innerRequiredRole"
+	//
 	//	innerRequiredRole=[repository::RequiredRole|EString] "outerRequiredRole"
+	//
 	//	outerRequiredRole=[repository::RequiredRole|EString] "}";
 	public RequiredDelegationConnectorElements getRequiredDelegationConnectorAccess() {
 		return (pRequiredDelegationConnector != null) ? pRequiredDelegationConnector : (pRequiredDelegationConnector = new RequiredDelegationConnectorElements());
@@ -2380,43 +2477,51 @@ public class MyDslTestGrammarAccess extends AbstractGrammarElementFinder {
 	}
 
 	//terminal ID:
+	//
 	//	"^"? ("a".."z" | "A".."Z" | "_") ("a".."z" | "A".."Z" | "_" | "0".."9")*;
 	public TerminalRule getIDRule() {
 		return gaTerminals.getIDRule();
 	} 
 
 	//terminal INT returns ecore::EInt:
+	//
 	//	"0".."9"+;
 	public TerminalRule getINTRule() {
 		return gaTerminals.getINTRule();
 	} 
 
 	//terminal STRING:
+	//
 	//	"\"" ("\\" ("b" | "t" | "n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\""))* "\"" | "\'" ("\\" ("b" | "t" |
+	//
 	//	"n" | "f" | "r" | "u" | "\"" | "\'" | "\\") | !("\\" | "\'"))* "\'";
 	public TerminalRule getSTRINGRule() {
 		return gaTerminals.getSTRINGRule();
 	} 
 
 	//terminal ML_COMMENT:
+	//
 	//	"/ *"->"* /";
 	public TerminalRule getML_COMMENTRule() {
 		return gaTerminals.getML_COMMENTRule();
 	} 
 
 	//terminal SL_COMMENT:
+	//
 	//	"//" !("\n" | "\r")* ("\r"? "\n")?;
 	public TerminalRule getSL_COMMENTRule() {
 		return gaTerminals.getSL_COMMENTRule();
 	} 
 
 	//terminal WS:
+	//
 	//	(" " | "\t" | "\r" | "\n")+;
 	public TerminalRule getWSRule() {
 		return gaTerminals.getWSRule();
 	} 
 
 	//terminal ANY_OTHER:
+	//
 	//	.;
 	public TerminalRule getANY_OTHERRule() {
 		return gaTerminals.getANY_OTHERRule();
diff --git a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTest.xtext b/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTest.xtext
index e94f998b71f7d3f39fccef3d91a6763ebd880f9f..8496644f25383a05515f3c80d3578051fea03896 100644
--- a/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTest.xtext
+++ b/org.xtext.example.mydslTest/src/org/xtext/example/mydsl/MyDslTest.xtext
@@ -21,14 +21,22 @@ import "platform:/resource/edu.kit.ipd.descartes.mm/model/resourcetype.ecore" as
 
 Repository returns repository::Repository:
 	'Repository'
-	name=EString
+	name=EString 
 	'{' 
+(
+		( datatypes+=DataType ) | 
+		(interfaces+=Interface) |
+		(components+=RepositoryComponent )
+		
+)*
+
+/*
 		('datatypes' '{' datatypes+=DataType ( "," datatypes+=DataType)* '}' )? 
 		('interfaces' '{' interfaces+=Interface ( "," interfaces+=Interface)* '}' )? 
 		('components' '{' components+=RepositoryComponent ( "," components+=RepositoryComponent)* '}' )?
+*/
     '}';
 
-
 DataType returns repository::DataType:
 	CollectionDataType | CompositeDataType | PrimitiveDataType;
 
@@ -102,14 +110,14 @@ Parameter returns repository::Parameter:
 
 ProvidedRole returns repository::ProvidedRole:
 	{repository::ProvidedRole}
-	'provides' 
-	((interface+=[repository::Interface|EString]) (',')?)*	
+	'ProvidedRole' 
+	((interface=[repository::Interface|EString]) (',')?)*	
 		;
 
 RequiredRole returns repository::RequiredRole:
 	{repository::RequiredRole}
-	'requires'
-		((interface+=[repository::Interface|EString]) (',')?)*
+	'RequiredRole'
+		((interface=[repository::Interface|EString]) (',')?)*
 		;
 
 BasicComponent returns repository::BasicComponent: