<?xml version="1.0" encoding="UTF-8"?> | |
<ecore:EPackage xmi:version="2.0" | |
xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="DirectedGraph" | |
nsURI="DirectedGraph" nsPrefix="DirectedGraph"> | |
<eClassifiers xsi:type="ecore:EClass" name="Graph"> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="contents" upperBound="-1" | |
eType="#//GraphElement" containment="true" eOpposite="#//GraphElement/graph"/> | |
</eClassifiers> | |
<eClassifiers xsi:type="ecore:EClass" name="GraphElement" abstract="true"> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="graph" eType="#//Graph" | |
eOpposite="#//Graph/contents"/> | |
</eClassifiers> | |
<eClassifiers xsi:type="ecore:EClass" name="Node" eSuperTypes="#//GraphElement"> | |
<eStructuralFeatures xsi:type="ecore:EAttribute" name="label" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="outgoing" upperBound="-1" | |
eType="#//Edge" eOpposite="#//Edge/source"/> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="incoming" upperBound="-1" | |
eType="#//Edge" eOpposite="#//Edge/target"/> | |
</eClassifiers> | |
<eClassifiers xsi:type="ecore:EClass" name="Edge" eSuperTypes="#//GraphElement"> | |
<eStructuralFeatures xsi:type="ecore:EAttribute" name="weight" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"/> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="source" eType="#//Node" | |
eOpposite="#//Node/outgoing"/> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="#//Node" | |
eOpposite="#//Node/incoming"/> | |
</eClassifiers> | |
</ecore:EPackage> |