blob: c348d91703c1d195aa213599706c18b87ac5965a [file] [log] [blame]
<?xml version="1.0" encoding="ASCII"?>
<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" xmi:id="EMOF" name="EMOF" nsURI="http://schema.omg.org/spec/MOF/2.0/emof.xml" nsPrefix="emof">
<eClassifiers xsi:type="ecore:EDataType" xmi:id="PrimitiveTypes.Boolean" name="Boolean" instanceClassName="java.lang.Boolean"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Class" name="Class" eSuperTypes="EMOF.Type">
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.Class.isAbstract" name="isAbstract" eType="PrimitiveTypes.Boolean" defaultValueLiteral="false"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Class.ownedAttribute" name="ownedAttribute" upperBound="-1" eType="EMOF.Property" containment="true" resolveProxies="false" eOpposite="EMOF.Property.class"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Class.ownedOperation" name="ownedOperation" upperBound="-1" eType="EMOF.Operation" containment="true" resolveProxies="false" eOpposite="EMOF.Operation.class"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Class.superClass" name="superClass" ordered="false" upperBound="-1" eType="EMOF.Class"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Comment" name="Comment" eSuperTypes="EMOF.Element">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Comment.annotatedElement" name="annotatedElement" ordered="false" upperBound="-1" eType="EMOF.NamedElement"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.Comment.body" name="body" eType="PrimitiveTypes.String"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.DataType" name="DataType" eSuperTypes="EMOF.Type"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Element" name="Element" abstract="true" eSuperTypes="EMOF.Object">
<eOperations xmi:id="EMOF.Element.container" name="container" eType="EMOF.Element"/>
<eOperations xmi:id="EMOF.Element.equals" name="equals" eType="PrimitiveTypes.Boolean">
<eParameters xmi:id="EMOF.Element.equals.object" name="object" eType="EMOF.Object"/>
</eOperations>
<eOperations xmi:id="EMOF.Element.get" name="get" eType="EMOF.Object">
<eParameters xmi:id="EMOF.Element.get.property" name="property" eType="EMOF.Property"/>
</eOperations>
<eOperations xmi:id="EMOF.Element.getMetaClass" name="getMetaClass" eType="EMOF.Class"/>
<eOperations xmi:id="EMOF.Element.isSet" name="isSet" eType="PrimitiveTypes.Boolean">
<eParameters xmi:id="EMOF.Element.isSet.property" name="property" eType="EMOF.Property"/>
</eOperations>
<eOperations xmi:id="EMOF.Element.set" name="set">
<eParameters xmi:id="EMOF.Element.set.property" name="property" eType="EMOF.Property"/>
<eParameters xmi:id="EMOF.Element.set.object" name="object" eType="EMOF.Object"/>
</eOperations>
<eOperations xmi:id="EMOF.Element.unset" name="unset">
<eParameters xmi:id="EMOF.Element.unset.property" name="property" eType="EMOF.Property"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Element.ownedComment" name="ownedComment" ordered="false" upperBound="-1" eType="EMOF.Comment" containment="true" resolveProxies="false"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Enumeration" name="Enumeration" eSuperTypes="EMOF.DataType">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Enumeration.ownedLiteral" name="ownedLiteral" upperBound="-1" eType="EMOF.EnumerationLiteral" containment="true" resolveProxies="false" eOpposite="EMOF.EnumerationLiteral.enumeration"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.EnumerationLiteral" name="EnumerationLiteral" eSuperTypes="EMOF.NamedElement">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.EnumerationLiteral.enumeration" name="enumeration" eType="EMOF.Enumeration" transient="true" resolveProxies="false" eOpposite="EMOF.Enumeration.ownedLiteral"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Extent" name="Extent" eSuperTypes="EMOF.Object">
<eOperations xmi:id="EMOF.Extent.elements" name="elements" eType="EMOF.ReflectiveSequence"/>
<eOperations xmi:id="EMOF.Extent.useContainment" name="useContainment" eType="PrimitiveTypes.Boolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Factory" name="Factory" eSuperTypes="EMOF.Element">
<eOperations xmi:id="EMOF.Factory.convertToString" name="convertToString" eType="PrimitiveTypes.String">
<eParameters xmi:id="EMOF.Factory.convertToString.dataType" name="dataType" eType="EMOF.DataType"/>
<eParameters xmi:id="EMOF.Factory.convertToString.object" name="object" eType="EMOF.Object"/>
</eOperations>
<eOperations xmi:id="EMOF.Factory.create" name="create" eType="EMOF.Element">
<eParameters xmi:id="EMOF.Factory.create.metaClass" name="metaClass" eType="EMOF.Class"/>
</eOperations>
<eOperations xmi:id="EMOF.Factory.createFromString" name="createFromString" eType="EMOF.Object">
<eParameters xmi:id="EMOF.Factory.createFromString.dataType" name="dataType" eType="EMOF.DataType"/>
<eParameters xmi:id="EMOF.Factory.createFromString.string" name="string" eType="PrimitiveTypes.String"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Factory.package" name="package" lowerBound="1" eType="EMOF.Package"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" xmi:id="PrimitiveTypes.Integer" name="Integer" instanceClassName="java.lang.Integer"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.MultiplicityElement" name="MultiplicityElement" abstract="true">
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.MultiplicityElement.isOrdered" name="isOrdered" eType="PrimitiveTypes.Boolean" defaultValueLiteral="false"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.MultiplicityElement.isUnique" name="isUnique" eType="PrimitiveTypes.Boolean" defaultValueLiteral="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.MultiplicityElement.lower" name="lower" eType="PrimitiveTypes.Integer" defaultValueLiteral="1"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.MultiplicityElement.upper" name="upper" eType="PrimitiveTypes.UnlimitedNatural" defaultValueLiteral="1"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.NamedElement" name="NamedElement" abstract="true" eSuperTypes="EMOF.Element">
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.NamedElement.name" name="name" eType="PrimitiveTypes.String"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Object" name="Object"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Operation" name="Operation" eSuperTypes="EMOF.TypedElement EMOF.MultiplicityElement">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Operation.class" name="class" eType="EMOF.Class" transient="true" resolveProxies="false" eOpposite="EMOF.Class.ownedOperation"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Operation.ownedParameter" name="ownedParameter" upperBound="-1" eType="EMOF.Parameter" containment="true" resolveProxies="false" eOpposite="EMOF.Parameter.operation"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Operation.raisedException" name="raisedException" ordered="false" upperBound="-1" eType="EMOF.Type"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Package" name="Package" eSuperTypes="EMOF.NamedElement">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Package.nestedPackage" name="nestedPackage" ordered="false" upperBound="-1" eType="EMOF.Package" containment="true" resolveProxies="false" eOpposite="EMOF.Package.nestingPackage"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Package.nestingPackage" name="nestingPackage" eType="EMOF.Package" transient="true" resolveProxies="false" eOpposite="EMOF.Package.nestedPackage"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Package.ownedType" name="ownedType" ordered="false" upperBound="-1" eType="EMOF.Type" containment="true" resolveProxies="false" eOpposite="EMOF.Type.package"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.Package.uri" name="uri" eType="PrimitiveTypes.String"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Parameter" name="Parameter" eSuperTypes="EMOF.TypedElement EMOF.MultiplicityElement">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Parameter.operation" name="operation" eType="EMOF.Operation" transient="true" resolveProxies="false" eOpposite="EMOF.Operation.ownedParameter"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.PrimitiveType" name="PrimitiveType" eSuperTypes="EMOF.DataType"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Property" name="Property" eSuperTypes="EMOF.TypedElement EMOF.MultiplicityElement">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Property.class" name="class" eType="EMOF.Class" transient="true" resolveProxies="false" eOpposite="EMOF.Class.ownedAttribute"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.Property.default" name="default" eType="PrimitiveTypes.String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.Property.isComposite" name="isComposite" eType="PrimitiveTypes.Boolean" defaultValueLiteral="false"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.Property.isDerived" name="isDerived" eType="PrimitiveTypes.Boolean" defaultValueLiteral="false"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.Property.isID" name="isID" eType="PrimitiveTypes.Boolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.Property.isReadOnly" name="isReadOnly" eType="PrimitiveTypes.Boolean" defaultValueLiteral="false"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Property.opposite" name="opposite" eType="EMOF.Property"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" xmi:id="PrimitiveTypes.Real" name="Real" instanceClassName="java.lang.Float"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.ReflectiveCollection" name="ReflectiveCollection" eSuperTypes="EMOF.Object">
<eOperations xmi:id="EMOF.ReflectiveCollection.add" name="add" eType="PrimitiveTypes.Boolean">
<eParameters xmi:id="EMOF.ReflectiveCollection.add.object" name="object" eType="EMOF.Object"/>
</eOperations>
<eOperations xmi:id="EMOF.ReflectiveCollection.addAll" name="addAll" eType="PrimitiveTypes.Boolean">
<eParameters xmi:id="EMOF.ReflectiveCollection.addAll.objects" name="objects" eType="EMOF.ReflectiveSequence"/>
</eOperations>
<eOperations xmi:id="EMOF.ReflectiveCollection.clear" name="clear"/>
<eOperations xmi:id="EMOF.ReflectiveCollection.remove" name="remove" eType="PrimitiveTypes.Boolean">
<eParameters xmi:id="EMOF.ReflectiveCollection.remove.object" name="object" eType="EMOF.Object"/>
</eOperations>
<eOperations xmi:id="EMOF.ReflectiveCollection.size" name="size" eType="PrimitiveTypes.Integer"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.ReflectiveSequence" name="ReflectiveSequence" eSuperTypes="EMOF.ReflectiveCollection">
<eOperations xmi:id="EMOF.ReflectiveSequence.add" name="add">
<eParameters xmi:id="EMOF.ReflectiveSequence.add.index" name="index" eType="PrimitiveTypes.Integer"/>
<eParameters xmi:id="EMOF.ReflectiveSequence.add.object" name="object" eType="EMOF.Object"/>
</eOperations>
<eOperations xmi:id="EMOF.ReflectiveSequence.get" name="get" eType="EMOF.Object">
<eParameters xmi:id="EMOF.ReflectiveSequence.get.index" name="index" eType="PrimitiveTypes.Integer"/>
</eOperations>
<eOperations xmi:id="EMOF.ReflectiveSequence.remove" name="remove" eType="EMOF.Object">
<eParameters xmi:id="EMOF.ReflectiveSequence.remove.index" name="index" eType="PrimitiveTypes.Integer"/>
</eOperations>
<eOperations xmi:id="EMOF.ReflectiveSequence.set" name="set" eType="EMOF.Object">
<eParameters xmi:id="EMOF.ReflectiveSequence.set.index" name="index" eType="PrimitiveTypes.Integer"/>
<eParameters xmi:id="EMOF.ReflectiveSequence.set.object" name="object" eType="EMOF.Object"/>
</eOperations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" xmi:id="PrimitiveTypes.String" name="String" instanceClassName="java.lang.String"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Tag" name="Tag" eSuperTypes="EMOF.Element">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Tag.element" name="element" ordered="false" upperBound="-1" eType="EMOF.Element"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.Tag.name" name="name" eType="PrimitiveTypes.String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EMOF.Tag.value" name="value" eType="PrimitiveTypes.String"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.Type" name="Type" abstract="true" eSuperTypes="EMOF.NamedElement">
<eOperations xmi:id="EMOF.Type.isInstance" name="isInstance" eType="PrimitiveTypes.Boolean">
<eParameters xmi:id="EMOF.Type.isInstance.object" name="object" eType="EMOF.Object"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.Type.package" name="package" eType="EMOF.Package" transient="true" resolveProxies="false" eOpposite="EMOF.Package.ownedType"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.TypedElement" name="TypedElement" abstract="true" eSuperTypes="EMOF.NamedElement">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EMOF.TypedElement.type" name="type" eType="EMOF.Type"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="EMOF.URIExtent" name="URIExtent" eSuperTypes="EMOF.Extent">
<eOperations xmi:id="EMOF.URIExtent.contextURI" name="contextURI" eType="PrimitiveTypes.String"/>
<eOperations xmi:id="EMOF.URIExtent.element" name="element" eType="EMOF.Element">
<eParameters xmi:id="EMOF.URIExtent.element.uri" name="uri" eType="PrimitiveTypes.String"/>
</eOperations>
<eOperations xmi:id="EMOF.URIExtent.uri" name="uri" eType="PrimitiveTypes.String">
<eParameters xmi:id="EMOF.URIExtent.uri.element" name="element" eType="EMOF.Element"/>
</eOperations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" xmi:id="PrimitiveTypes.UnlimitedNatural" name="UnlimitedNatural" instanceClassName="java.lang.Integer"/>
</ecore:EPackage>