From 0c985c7222ab0db0387ead5492c9bd69cafff752 Mon Sep 17 00:00:00 2001
From: Florian Hoelzl <hoelzl@fortiss.org>
Date: Mon, 14 Feb 2011 14:23:41 +0000
Subject: [PATCH] implemented type system parser and meta-model

---
 .../trunk/model/base.ecore                    | 57 +++++++++++++++++++
 1 file changed, 57 insertions(+)

diff --git a/org.fortiss.tooling.base/trunk/model/base.ecore b/org.fortiss.tooling.base/trunk/model/base.ecore
index aa5192a41..e6e3a7be0 100644
--- a/org.fortiss.tooling.base/trunk/model/base.ecore
+++ b/org.fortiss.tooling.base/trunk/model/base.ecore
@@ -11,4 +11,61 @@
       interface="true" eSuperTypes="#//INamedElement">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="comment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
   </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEntity" abstract="true" interface="true"
+      eSuperTypes="#//IEntityContainer">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="connections" upperBound="-1"
+        eType="#//IConnection" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="connectors" upperBound="-1"
+        eType="#//IConnector" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="specifications" upperBound="-1"
+        eType="#//IEntitySpecification" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="referenceBy" upperBound="-1"
+        eType="#//IEntityReference" eOpposite="#//IEntityReference/reference"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEntityContainer" abstract="true" interface="true">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="entities" upperBound="-1"
+        eType="#//IEntity" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEntityReference" abstract="true" interface="true">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="reference" eType="#//IEntity"
+        eOpposite="#//IEntity/referenceBy"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IEntitySpecification" abstract="true"
+      interface="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IConnector" abstract="true" interface="true"
+      eSuperTypes="#//INamedCommentedElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="specifications" upperBound="-1"
+        eType="#//IConnectorSpecification" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="incoming" upperBound="-1"
+        eType="#//IConnection" eOpposite="#//IConnection/target"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="outgoing" upperBound="-1"
+        eType="#//IConnection" eOpposite="#//IConnection/source"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="referencedBy" upperBound="-1"
+        eType="#//IConnectorReference" eOpposite="#//IConnectorReference/reference"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IConnectorSpecification" abstract="true"
+      interface="true"/>
+  <eClassifiers xsi:type="ecore:EClass" name="IConnectorReference" abstract="true"
+      interface="true">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="reference" eType="#//IConnector"
+        eOpposite="#//IConnector/referencedBy"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IConnection" abstract="true" interface="true"
+      eSuperTypes="#//INamedCommentedElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="source" eType="#//IConnector"
+        eOpposite="#//IConnector/outgoing"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="#//IConnector"
+        eOpposite="#//IConnector/incoming"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="referencedBy" upperBound="-1"
+        eType="#//IConnectionReference" eOpposite="#//IConnectionReference/reference"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="specifications" upperBound="-1"
+        eType="#//IConnectionSpecification" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IConnectionReference" abstract="true"
+      interface="true">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="reference" upperBound="-1"
+        eType="#//IConnection" eOpposite="#//IConnection/referencedBy"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IConnectionSpecification" abstract="true"
+      interface="true"/>
 </ecore:EPackage>
-- 
GitLab