<?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="javasourcecode" nsURI="http://www.example.org/develop" nsPrefix="dev"> <eClassifiers xsi:type="ecore:EClass" name="Method"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" unique="false" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eStructuralFeatures xsi:type="ecore:EReference" name="class" lowerBound="1" eType="#//ClassType" eOpposite="#//ClassType/methods"/> <eStructuralFeatures xsi:type="ecore:EReference" name="calling" upperBound="-1" eType="#//Method" eOpposite="#//Method/calledBy"/> <eStructuralFeatures xsi:type="ecore:EReference" name="calledBy" upperBound="-1" eType="#//Method" eOpposite="#//Method/calling"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="ClassType"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" unique="false" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eStructuralFeatures xsi:type="ecore:EReference" name="asg" lowerBound="1" eType="#//JavaASG" eOpposite="#//JavaASG/classes"/> <eStructuralFeatures xsi:type="ecore:EReference" name="methods" upperBound="-1" eType="#//Method" containment="true" eOpposite="#//Method/class"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="JavaASG"> <eStructuralFeatures xsi:type="ecore:EReference" name="classes" upperBound="-1" eType="#//ClassType" containment="true" eOpposite="#//ClassType/asg"/> </eClassifiers> </ecore:EPackage>