diff --git a/org.fortiss.tooling.base/trunk/model/base.genmodel b/org.fortiss.tooling.base/trunk/model/base.genmodel
index 038c13bce4f8dbbd89afec99209ef062276b5b41..e7ef163a39a92c66d9830c12dde684242bfa0015 100644
--- a/org.fortiss.tooling.base/trunk/model/base.genmodel
+++ b/org.fortiss.tooling.base/trunk/model/base.genmodel
@@ -7,38 +7,75 @@
   <foreignModel>base.ecore</foreignModel>
   <genPackages prefix="Base" basePackage="org.fortiss.tooling.base" disposableProviderFactory="true"
       ecorePackage="base.ecore#/">
-    <genClasses image="false" ecoreClass="base.ecore#//IHierarchicElement">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//IHierarchicElement/connections"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//IHierarchicElement/connectors"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//IHierarchicElement/specifications"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference base.ecore#//IHierarchicElement/referencedBy"/>
-    </genClasses>
-    <genClasses image="false" ecoreClass="base.ecore#//IHierarchicElementContainer">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//IHierarchicElementContainer/containedElements"/>
-    </genClasses>
-    <genClasses image="false" ecoreClass="base.ecore#//IHierarchicElementReference">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference base.ecore#//IHierarchicElementReference/reference"/>
-    </genClasses>
-    <genClasses image="false" ecoreClass="base.ecore#//IHierarchicElementSpecification"/>
-    <genClasses image="false" ecoreClass="base.ecore#//IConnector">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//IConnector/specifications"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference base.ecore#//IConnector/incoming"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference base.ecore#//IConnector/outgoing"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference base.ecore#//IConnector/referencedBy"/>
-    </genClasses>
-    <genClasses image="false" ecoreClass="base.ecore#//IConnectorSpecification"/>
-    <genClasses image="false" ecoreClass="base.ecore#//IConnectorReference">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference base.ecore#//IConnectorReference/reference"/>
-    </genClasses>
-    <genClasses image="false" ecoreClass="base.ecore#//IConnection">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference base.ecore#//IConnection/source"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference base.ecore#//IConnection/target"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference base.ecore#//IConnection/referencedBy"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//IConnection/specifications"/>
-    </genClasses>
-    <genClasses image="false" ecoreClass="base.ecore#//IConnectionReference">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference base.ecore#//IConnectionReference/reference"/>
-    </genClasses>
-    <genClasses image="false" ecoreClass="base.ecore#//IConnectionSpecification"/>
+    <nestedGenPackages prefix="Element" basePackage="org.fortiss.tooling.base.model"
+        disposableProviderFactory="true" ecorePackage="base.ecore#//element">
+      <genClasses ecoreClass="base.ecore#//element/IModelElement">
+        <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//element/IModelElement/specifications"/>
+        <genFeatures notify="false" createChild="false" propertySortChoices="true"
+            ecoreFeature="ecore:EReference base.ecore#//element/IModelElement/referencedBy"/>
+      </genClasses>
+      <genClasses image="false" ecoreClass="base.ecore#//element/IModelElementSpecification"/>
+      <genClasses image="false" ecoreClass="base.ecore#//element/IModelElementReference">
+        <genFeatures notify="false" createChild="false" propertySortChoices="true"
+            ecoreFeature="ecore:EReference base.ecore#//element/IModelElementReference/reference"/>
+      </genClasses>
+      <genClasses image="false" ecoreClass="base.ecore#//element/IHierarchicElement">
+        <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//element/IHierarchicElement/connections"/>
+        <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//element/IHierarchicElement/connectors"/>
+      </genClasses>
+      <genClasses image="false" ecoreClass="base.ecore#//element/IHierarchicElementContainer">
+        <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//element/IHierarchicElementContainer/containedElements"/>
+      </genClasses>
+      <genClasses image="false" ecoreClass="base.ecore#//element/IConnector">
+        <genFeatures notify="false" createChild="false" propertySortChoices="true"
+            ecoreFeature="ecore:EReference base.ecore#//element/IConnector/incoming"/>
+        <genFeatures notify="false" createChild="false" propertySortChoices="true"
+            ecoreFeature="ecore:EReference base.ecore#//element/IConnector/outgoing"/>
+      </genClasses>
+      <genClasses image="false" ecoreClass="base.ecore#//element/IConnection">
+        <genFeatures notify="false" createChild="false" propertySortChoices="true"
+            ecoreFeature="ecore:EReference base.ecore#//element/IConnection/source"/>
+        <genFeatures notify="false" createChild="false" propertySortChoices="true"
+            ecoreFeature="ecore:EReference base.ecore#//element/IConnection/target"/>
+      </genClasses>
+      <genClasses image="false" ecoreClass="base.ecore#//element/IHiddenSpecification"/>
+      <genClasses ecoreClass="base.ecore#//element/IAnnotatedSpecification"/>
+    </nestedGenPackages>
+    <nestedGenPackages prefix="Layout" basePackage="org.fortiss.tooling.base.model"
+        disposableProviderFactory="true" ecorePackage="base.ecore#//layout">
+      <genEnums typeSafeEnumCompatible="false" ecoreEnum="base.ecore#//layout/EOrientation">
+        <genEnumLiterals ecoreEnumLiteral="base.ecore#//layout/EOrientation/NORTH"/>
+        <genEnumLiterals ecoreEnumLiteral="base.ecore#//layout/EOrientation/EAST"/>
+        <genEnumLiterals ecoreEnumLiteral="base.ecore#//layout/EOrientation/SOUTH"/>
+        <genEnumLiterals ecoreEnumLiteral="base.ecore#//layout/EOrientation/WEST"/>
+      </genEnums>
+      <genClasses image="false" ecoreClass="base.ecore#//layout/ILayoutedModelElement">
+        <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//layout/ILayoutedModelElement/layoutData"/>
+      </genClasses>
+      <genClasses image="false" ecoreClass="base.ecore#//layout/ILayoutData">
+        <genFeatures createChild="false" ecoreFeature="ecore:EAttribute base.ecore#//layout/ILayoutData/key"/>
+      </genClasses>
+      <genClasses ecoreClass="base.ecore#//layout/Point">
+        <genFeatures createChild="false" ecoreFeature="ecore:EAttribute base.ecore#//layout/Point/x"/>
+        <genFeatures createChild="false" ecoreFeature="ecore:EAttribute base.ecore#//layout/Point/y"/>
+      </genClasses>
+      <genClasses ecoreClass="base.ecore#//layout/Dimension">
+        <genFeatures createChild="false" ecoreFeature="ecore:EAttribute base.ecore#//layout/Dimension/width"/>
+        <genFeatures createChild="false" ecoreFeature="ecore:EAttribute base.ecore#//layout/Dimension/height"/>
+      </genClasses>
+      <genClasses ecoreClass="base.ecore#//layout/Orientation">
+        <genFeatures createChild="false" ecoreFeature="ecore:EAttribute base.ecore#//layout/Orientation/orientation"/>
+      </genClasses>
+      <genClasses ecoreClass="base.ecore#//layout/Points">
+        <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//layout/Points/points"/>
+      </genClasses>
+      <genClasses ecoreClass="base.ecore#//layout/Angle">
+        <genFeatures createChild="false" ecoreFeature="ecore:EAttribute base.ecore#//layout/Angle/angle"/>
+      </genClasses>
+      <genClasses ecoreClass="base.ecore#//layout/Offset">
+        <genFeatures createChild="false" ecoreFeature="ecore:EAttribute base.ecore#//layout/Offset/offset"/>
+      </genClasses>
+      <genClasses ecoreClass="base.ecore#//layout/OffsetOrientation"/>
+    </nestedGenPackages>
   </genPackages>
 </genmodel:GenModel>