<?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="Domain"
    nsURI="platform:/resource/www-modeling-mdt-ocl/docs/publications/EclipseOMG2012/Domain.ecore"
    nsPrefix="pfx">
  <eClassifiers xsi:type="ecore:EClass" name="Inheritance">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="depth" ordered="false"
        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBigInteger"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="fragments" ordered="false"
        upperBound="-1" eType="#//Fragment"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="indexes" upperBound="-1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBigInteger"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Type" eSuperTypes="#//Inheritance">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Fragment">
    <eStructuralFeatures xsi:type="ecore:EReference" name="baseInheritance" ordered="false"
        lowerBound="1" eType="#//Inheritance"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="derivedInheritance" ordered="false"
        lowerBound="1" eType="#//Inheritance"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="operations" upperBound="-1"
        eType="#//Operation"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
        eType="#//Property"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Operation">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="index" ordered="false"
        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBigInteger"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="implementation" ordered="false"
        lowerBound="1" eType="#//Implementation"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Property">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="index" ordered="false"
        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBigInteger"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="implementation" ordered="false"
        lowerBound="1" eType="#//Implementation"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Implementation"/>
</ecore:EPackage>
