blob: 7c8bbffdb1619fa36d0b6ec608eaea16ba30a975 [file] [log] [blame]
<?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="gdiffdata" nsURI="http://www.eclipse.org/emf/diffmerge/generic/gdiffdata/1.0.0"
nsPrefix="org.eclipse.emf.diffmerge.generic">
<eClassifiers xsi:type="ecore:EClass" name="GIdentified" abstract="true">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
iD="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GComparison" abstract="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A partial implementation of IComparison based on EMF."/>
</eAnnotations>
<eTypeParameters name="E"/>
<eTypeParameters name="A"/>
<eTypeParameters name="R"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="ancestorScope" transient="true">
<eGenericType eClassifier="#//IEditableTreeDataScope">
<eTypeArguments eTypeParameter="#//GComparison/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="referenceScope" lowerBound="1"
transient="true">
<eGenericType eClassifier="#//IEditableTreeDataScope">
<eTypeArguments eTypeParameter="#//GComparison/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="targetScope" lowerBound="1"
transient="true">
<eGenericType eClassifier="#//IEditableTreeDataScope">
<eTypeArguments eTypeParameter="#//GComparison/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="lastMatchPolicy" transient="true">
<eGenericType eClassifier="#//IMatchPolicy">
<eTypeArguments eTypeParameter="#//GComparison/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="lastDiffPolicy" transient="true">
<eGenericType eClassifier="#//IDiffPolicy">
<eTypeArguments eTypeParameter="#//GComparison/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="lastMergePolicy" transient="true">
<eGenericType eClassifier="#//IMergePolicy">
<eTypeArguments eTypeParameter="#//GComparison/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="mapping" lowerBound="1"
containment="true">
<eGenericType eClassifier="#//GMapping">
<eTypeArguments eTypeParameter="#//GComparison/E"/>
<eTypeArguments eTypeParameter="#//GComparison/A"/>
<eTypeArguments eTypeParameter="#//GComparison/R"/>
</eGenericType>
</eStructuralFeatures>
<eGenericSuperTypes eClassifier="#//GIdentified"/>
<eGenericSuperTypes eClassifier="#//IEditableComparison">
<eTypeArguments eTypeParameter="#//GComparison/E"/>
</eGenericSuperTypes>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GComparisonElement" abstract="true"
interface="true">
<eTypeParameters name="E"/>
<eTypeParameters name="A"/>
<eTypeParameters name="R"/>
<eOperations name="getComparison">
<eGenericType eClassifier="#//GComparison">
<eTypeArguments eTypeParameter="#//GComparisonElement/E"/>
<eTypeArguments eTypeParameter="#//GComparisonElement/A"/>
<eTypeArguments eTypeParameter="#//GComparisonElement/R"/>
</eGenericType>
</eOperations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GMapping" abstract="true">
<eTypeParameters name="E"/>
<eTypeParameters name="A"/>
<eTypeParameters name="R"/>
<eOperations name="disconnect" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eParameters name="role" lowerBound="1" eType="#//Role"/>
<eParameters name="element" lowerBound="1">
<eGenericType eTypeParameter="#//GMapping/E"/>
</eParameters>
</eOperations>
<eOperations name="isIgnoredReferenceValue" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eParameters name="source" lowerBound="1">
<eGenericType eTypeParameter="#//GMapping/E"/>
</eParameters>
<eParameters name="reference" lowerBound="1">
<eGenericType eTypeParameter="#//GMapping/R"/>
</eParameters>
<eParameters name="value" lowerBound="1">
<eGenericType eTypeParameter="#//GMapping/E"/>
</eParameters>
<eParameters name="role" lowerBound="1" eType="#//Role"/>
</eOperations>
<eOperations name="map" lowerBound="1">
<eGenericType eClassifier="#//GMatch">
<eTypeArguments eTypeParameter="#//GMapping/E"/>
<eTypeArguments eTypeParameter="#//GMapping/A"/>
<eTypeArguments eTypeParameter="#//GMapping/R"/>
</eGenericType>
<eParameters name="element" lowerBound="1">
<eGenericType eTypeParameter="#//GMapping/E"/>
</eParameters>
<eParameters name="role" lowerBound="1" eType="#//Role"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="modifiableContents" upperBound="-1"
containment="true">
<eGenericType eClassifier="#//GMatch">
<eTypeArguments eTypeParameter="#//GMapping/E"/>
<eTypeArguments eTypeParameter="#//GMapping/A"/>
<eTypeArguments eTypeParameter="#//GMapping/R"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="referenceCompletedMatches"
upperBound="-1" resolveProxies="false">
<eGenericType eClassifier="#//IMatch">
<eTypeArguments eTypeParameter="#//GMapping/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="targetCompletedMatches"
upperBound="-1" resolveProxies="false">
<eGenericType eClassifier="#//IMatch">
<eTypeArguments eTypeParameter="#//GMapping/E"/>
</eGenericType>
</eStructuralFeatures>
<eGenericSuperTypes eClassifier="#//GIdentified"/>
<eGenericSuperTypes eClassifier="#//GComparisonElement">
<eTypeArguments eTypeParameter="#//GMapping/E"/>
<eTypeArguments eTypeParameter="#//GMapping/A"/>
<eTypeArguments eTypeParameter="#//GMapping/R"/>
</eGenericSuperTypes>
<eGenericSuperTypes eClassifier="#//IEditableMapping">
<eTypeArguments eTypeParameter="#//GMapping/E"/>
</eGenericSuperTypes>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GMatch" abstract="true">
<eTypeParameters name="E"/>
<eTypeParameters name="A"/>
<eTypeParameters name="R"/>
<eOperations name="getAncestor">
<eGenericType eTypeParameter="#//GMatch/E"/>
</eOperations>
<eOperations name="getReference">
<eGenericType eTypeParameter="#//GMatch/E"/>
</eOperations>
<eOperations name="getTarget">
<eGenericType eTypeParameter="#//GMatch/E"/>
</eOperations>
<eOperations name="setAncestor">
<eParameters name="e">
<eGenericType eTypeParameter="#//GMatch/E"/>
</eParameters>
</eOperations>
<eOperations name="setReference">
<eParameters name="e">
<eGenericType eTypeParameter="#//GMatch/E"/>
</eParameters>
</eOperations>
<eOperations name="setTarget">
<eParameters name="e">
<eGenericType eTypeParameter="#//GMatch/E"/>
</eParameters>
</eOperations>
<eOperations name="getMapping" lowerBound="1">
<eGenericType eClassifier="#//GMapping">
<eTypeArguments eTypeParameter="#//GMatch/E"/>
<eTypeArguments eTypeParameter="#//GMatch/A"/>
<eTypeArguments eTypeParameter="#//GMatch/R"/>
</eGenericType>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="matchID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"
transient="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="modifiableRelatedDifferences"
upperBound="-1" containment="true">
<eGenericType eClassifier="#//GMergeableDifference">
<eTypeArguments eTypeParameter="#//GMatch/E"/>
<eTypeArguments eTypeParameter="#//GMatch/A"/>
<eTypeArguments eTypeParameter="#//GMatch/R"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="elementPresenceDifference">
<eGenericType eClassifier="#//IElementPresence">
<eTypeArguments eTypeParameter="#//GMatch/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="referenceOwnershipDifference">
<eGenericType eClassifier="#//IReferenceValuePresence">
<eTypeArguments eTypeParameter="#//GMatch/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="targetOwnershipDifference">
<eGenericType eClassifier="#//IReferenceValuePresence">
<eTypeArguments eTypeParameter="#//GMatch/E"/>
</eGenericType>
</eStructuralFeatures>
<eGenericSuperTypes eClassifier="#//GIdentified"/>
<eGenericSuperTypes eClassifier="#//GComparisonElement">
<eTypeArguments eTypeParameter="#//GMatch/E"/>
<eTypeArguments eTypeParameter="#//GMatch/A"/>
<eTypeArguments eTypeParameter="#//GMatch/R"/>
</eGenericSuperTypes>
<eGenericSuperTypes eClassifier="#//IEditableMatch">
<eTypeArguments eTypeParameter="#//GMatch/E"/>
</eGenericSuperTypes>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GMergeableDifference" abstract="true">
<eTypeParameters name="E"/>
<eTypeParameters name="A"/>
<eTypeParameters name="R"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="alignedWithAncestor" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="conflicting" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="ignored" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="mergeDestination" eType="#//Role"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="possibleMergeDestinations"
upperBound="-1" eType="#//Role"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="explicitDependenciesForTarget"
upperBound="-1">
<eGenericType eClassifier="#//IMergeableDifference">
<eTypeArguments eTypeParameter="#//GMergeableDifference/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="explicitDependenciesForReference"
upperBound="-1">
<eGenericType eClassifier="#//IMergeableDifference">
<eTypeArguments eTypeParameter="#//GMergeableDifference/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="implicitDependenciesForTarget"
upperBound="-1">
<eGenericType eClassifier="#//IMergeableDifference">
<eTypeArguments eTypeParameter="#//GMergeableDifference/E"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="implicitDependenciesForReference"
upperBound="-1">
<eGenericType eClassifier="#//IMergeableDifference">
<eTypeArguments eTypeParameter="#//GMergeableDifference/E"/>
</eGenericType>
</eStructuralFeatures>
<eGenericSuperTypes eClassifier="#//GIdentified"/>
<eGenericSuperTypes eClassifier="#//GComparisonElement">
<eTypeArguments eTypeParameter="#//GMergeableDifference/E"/>
<eTypeArguments eTypeParameter="#//GMergeableDifference/A"/>
<eTypeArguments eTypeParameter="#//GMergeableDifference/R"/>
</eGenericSuperTypes>
<eGenericSuperTypes eClassifier="#//IEditableMergeableDifference">
<eTypeArguments eTypeParameter="#//GMergeableDifference/E"/>
</eGenericSuperTypes>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GElementRelativePresence" abstract="true">
<eTypeParameters name="E"/>
<eTypeParameters name="A"/>
<eTypeParameters name="R"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="elementMatch" lowerBound="1">
<eGenericType eClassifier="#//GMatch">
<eTypeArguments eTypeParameter="#//GElementRelativePresence/E"/>
<eTypeArguments eTypeParameter="#//GElementRelativePresence/A"/>
<eTypeArguments eTypeParameter="#//GElementRelativePresence/R"/>
</eGenericType>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="presenceRole" lowerBound="1"
eType="#//Role"/>
<eGenericSuperTypes eClassifier="#//GMergeableDifference">
<eTypeArguments eTypeParameter="#//GElementRelativePresence/E"/>
<eTypeArguments eTypeParameter="#//GElementRelativePresence/A"/>
<eTypeArguments eTypeParameter="#//GElementRelativePresence/R"/>
</eGenericSuperTypes>
<eGenericSuperTypes eClassifier="#//IElementRelativePresence">
<eTypeArguments eTypeParameter="#//GElementRelativePresence/E"/>
</eGenericSuperTypes>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GElementPresence" abstract="true">
<eTypeParameters name="E"/>
<eTypeParameters name="A"/>
<eTypeParameters name="R"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownerMatch" lowerBound="1">
<eGenericType eClassifier="#//GMatch">
<eTypeArguments eTypeParameter="#//GElementPresence/E"/>
<eTypeArguments eTypeParameter="#//GElementPresence/A"/>
<eTypeArguments eTypeParameter="#//GElementPresence/R"/>
</eGenericType>
</eStructuralFeatures>
<eGenericSuperTypes eClassifier="#//GElementRelativePresence">
<eTypeArguments eTypeParameter="#//GElementPresence/E"/>
<eTypeArguments eTypeParameter="#//GElementPresence/A"/>
<eTypeArguments eTypeParameter="#//GElementPresence/R"/>
</eGenericSuperTypes>
<eGenericSuperTypes eClassifier="#//IElementPresence">
<eTypeArguments eTypeParameter="#//GElementPresence/E"/>
</eGenericSuperTypes>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GValuePresence" abstract="true">
<eTypeParameters name="E"/>
<eTypeParameters name="A"/>
<eTypeParameters name="R"/>
<eOperations name="getFeature" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="order" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
defaultValueLiteral="false"/>
<eGenericSuperTypes eClassifier="#//GElementRelativePresence">
<eTypeArguments eTypeParameter="#//GValuePresence/E"/>
<eTypeArguments eTypeParameter="#//GValuePresence/A"/>
<eTypeArguments eTypeParameter="#//GValuePresence/R"/>
</eGenericSuperTypes>
<eGenericSuperTypes eClassifier="#//IValuePresence">
<eTypeArguments eTypeParameter="#//GValuePresence/E"/>
</eGenericSuperTypes>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GAttributeValuePresence" abstract="true">
<eTypeParameters name="E"/>
<eTypeParameters name="A"/>
<eTypeParameters name="R"/>
<eOperations name="getFeature" lowerBound="1">
<eGenericType eTypeParameter="#//GAttributeValuePresence/A"/>
</eOperations>
<eOperations name="setAttribute">
<eParameters name="attribute" lowerBound="1">
<eGenericType eTypeParameter="#//GAttributeValuePresence/A"/>
</eParameters>
</eOperations>
<eOperations name="setValue">
<eParameters name="value" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eOperations>
<eGenericSuperTypes eClassifier="#//GValuePresence">
<eTypeArguments eTypeParameter="#//GAttributeValuePresence/E"/>
<eTypeArguments eTypeParameter="#//GAttributeValuePresence/A"/>
<eTypeArguments eTypeParameter="#//GAttributeValuePresence/R"/>
</eGenericSuperTypes>
<eGenericSuperTypes eClassifier="#//IAttributeValuePresence">
<eTypeArguments eTypeParameter="#//GAttributeValuePresence/E"/>
</eGenericSuperTypes>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GReferenceValuePresence" abstract="true">
<eTypeParameters name="E"/>
<eTypeParameters name="A"/>
<eTypeParameters name="R"/>
<eOperations name="getFeature" lowerBound="1">
<eGenericType eTypeParameter="#//GReferenceValuePresence/R"/>
</eOperations>
<eOperations name="setReference">
<eParameters name="reference" lowerBound="1">
<eGenericType eTypeParameter="#//GReferenceValuePresence/R"/>
</eParameters>
</eOperations>
<eOperations name="setValue">
<eParameters name="value" lowerBound="1">
<eGenericType eTypeParameter="#//GReferenceValuePresence/E"/>
</eParameters>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="valueMatch">
<eGenericType eClassifier="#//GMatch">
<eTypeArguments eTypeParameter="#//GReferenceValuePresence/E"/>
<eTypeArguments eTypeParameter="#//GReferenceValuePresence/A"/>
<eTypeArguments eTypeParameter="#//GReferenceValuePresence/R"/>
</eGenericType>
</eStructuralFeatures>
<eGenericSuperTypes eClassifier="#//GValuePresence">
<eTypeArguments eTypeParameter="#//GReferenceValuePresence/E"/>
<eTypeArguments eTypeParameter="#//GReferenceValuePresence/A"/>
<eTypeArguments eTypeParameter="#//GReferenceValuePresence/R"/>
</eGenericSuperTypes>
<eGenericSuperTypes eClassifier="#//IReferenceValuePresence">
<eTypeArguments eTypeParameter="#//GReferenceValuePresence/E"/>
</eGenericSuperTypes>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IComparison" instanceClassName="org.eclipse.emf.diffmerge.generic.api.IComparison"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IEditableComparison" instanceClassName="org.eclipse.emf.diffmerge.generic.api.IComparison.Editable"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IMapping" instanceClassName="org.eclipse.emf.diffmerge.generic.api.IMapping"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IEditableMapping" instanceClassName="org.eclipse.emf.diffmerge.generic.api.IMapping.Editable"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IMatch" instanceClassName="org.eclipse.emf.diffmerge.generic.api.IMatch"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IEditableMatch" instanceClassName="org.eclipse.emf.diffmerge.generic.api.IMatch.Editable"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IMergeableDifference" instanceClassName="org.eclipse.emf.diffmerge.generic.api.diff.IMergeableDifference"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IEditableMergeableDifference" instanceClassName="org.eclipse.emf.diffmerge.generic.api.diff.IMergeableDifference.Editable"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IElementRelativePresence" instanceClassName="org.eclipse.emf.diffmerge.generic.api.diff.IElementRelativePresence"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IElementPresence" instanceClassName="org.eclipse.emf.diffmerge.generic.api.diff.IElementPresence"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IValuePresence" instanceClassName="org.eclipse.emf.diffmerge.generic.api.diff.IValuePresence"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IAttributeValuePresence" instanceClassName="org.eclipse.emf.diffmerge.generic.api.diff.IAttributeValuePresence"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IReferenceValuePresence" instanceClassName="org.eclipse.emf.diffmerge.generic.api.diff.IReferenceValuePresence"
abstract="true" interface="true">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="IEditableTreeDataScope" instanceClassName="org.eclipse.emf.diffmerge.generic.api.scopes.IEditableTreeDataScope">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="IMatchPolicy" instanceClassName="org.eclipse.emf.diffmerge.generic.api.IMatchPolicy">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="IDiffPolicy" instanceClassName="org.eclipse.emf.diffmerge.generic.api.IDiffPolicy">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="IMergePolicy" instanceClassName="org.eclipse.emf.diffmerge.generic.api.IMergePolicy">
<eTypeParameters name="E"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="Role" instanceClassName="org.eclipse.emf.diffmerge.generic.api.Role"/>
</ecore:EPackage>