blob: 28af1a1f1d8bdff0d9ea65f22e6c5aaa6cf35b30 [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="constraint" nsURI="http://www.omg.org/spec/AML/20150501/ConstraintProfile.xmi"
nsPrefix="constraint">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="ConstraintProfile"/>
</eAnnotations>
<eClassifiers xsi:type="ecore:EClass" name="ComplexObjectConstraint" eSuperTypes="#//ObjectConstraint">
<eOperations name="singleParent" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.generalization->size() = 1"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="allAttributeConstraints" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value=" self.namespace.stereotypedBy('ComplexObjectConstraint')&#xA; implies&#xA; ((self.subsettedProperty->notEmpty()) or( self.redefinedProperty->notEmpty()))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVARCNarchetypeconceptvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VARCN- archetype concept validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.supplierDependency->exists(d|d.stereotypedBy('ArchetypeDefinition'))&#xA;implies&#xA;self.id.oclAsType(EnumerationLiteral)->forAll(e|e.name.match('id1(\\.1)*')) "/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVCARMattributenamereferencemodelvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VCARM- attribute name reference model validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] Validation Rule is enforced by UML type constraints for subsetted and/or redefined Properties.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVCAEXarchetypeattributereferencemodelexistenceconformance"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VCAEX- archetype attribute reference model existence conformance"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] validation rule is enforced by UML validation rules for subsetted or redefined properties."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVCAMarchetypeattributereferencemodelmultiplicityconformance"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VCAM- archetype attribute reference model multiplicity conformance"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This validation rule is enforced by UML Constraints on subsetted and/or redefined Properties.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVDIFVarchetypeattributedifferentialpathvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VDIFV- archetype attribute differential path validity:"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An archetype may only have a differential path if it is specialized."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVDIFPspecialisedarchetypeattributedifferentialpathvalidity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VDIFP- specialised archetype attribute differential path validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="If an attribute constraint has a differential path, &#xA;the path must exist in the flat parent, &#xA;and also be valid with respect to the reference model, &#xA;i.e. in the sense that it corresponds to a legal potential construction of objects."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSANCEspecialisedarchetypeattributenodeexistenceconformance"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSANCE- specialised archetype attribute node existence conformance"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] Validation Rule is enforced by UML type and cardinality constraints associated with subsetted and/or redefined Properties.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSAMspecialisedarchetypeattributemultiplicityconformance"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSAM- specialised archetype attribute multiplicity conformance"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] validation rule is enforced by UML multiplicity constraints applicable to subsetted and/or redefined Properties.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVACSOsinglevaluedattributechildobjectoccurrencesvalidity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VACSO- single-valued attribute child object occurrences validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.namespace.stereotypedBy('ComplexObjectConstraint')&#xA;implies(&#xA;self.subsettedProperty->notEmpty() or self.redefinedProperty->notEmpty()&#xA;)&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVACMCUcardinalityoccurrencesupperboundvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VACMCU- cardinality/occurrences upper bound validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] cardinality attribute of C_ATTRIBUTE is derived in UML from the set of sibling Properties subsetting/redefining a common Reference Model Property. &#xA;The derivation is implemented as part of the AML-UML to [AOM] QVT transformation. &#xA;The derived cardinality is computed from the sum of the lower and sum of the upper multiplicity ranges for the related Properties. &#xA;The collection type characteristics are also derived from the related Properties.&#xA;In summary, the [AOM] validation rule is enforced during provisioning from AML-UML to [AOM].&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVACMCOcardinalityoccurrencesorphans" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VACMCO- cardinality/occurrences orphans"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self->select(s|s.namespace.stereotypedBy('ComplexObjectConstraint'))&#xA;.subsettedProperty->union(self.redefinedProperty)&#xA;->select(r|r.upper>0)&#xA;->forAll(refProperty|&#xA;&#x9;self.namespace.oclAsType(Class).ownedAttribute->select(sibling|sibling.subsettedProperty->union(sibling.redefinedProperty)->includes(refProperty))&#xA;&#x9;.lower->sum()&lt;=(refProperty.upper-1)&#xA;)&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVCACAarchetypeattributereferencemodelcardinalityconformance"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VCACA- archetype attribute reference model cardinality conformance"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This cardinality rule is enforced by UML constraints on subsetted and/or redefined properties.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMWACMCLcardinalityoccurrenceslowerboundvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] WACMCL- cardinality/occurrences lower bound validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self->select(s|s.namespace.stereotypedBy('ComplexObjectConstraint'))&#xA;.subsettedProperty->union(self.redefinedProperty)&#xA;->select(r|r.upper>0)&#xA;->forAll(refProperty|&#xA;&#x9;self.namespace.oclAsType(Class).ownedAttribute->select(sibling|sibling.subsettedProperty->union(sibling.redefinedProperty)->includes(refProperty))&#xA;&#x9;.lower->sum()&lt;=refProperty.upper&#xA;)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSANCCspecialisedarchetypeattributenodecardinalityconformance"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSANCC- specialised archetype attribute node cardinality conformance"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] validation rule is enforced by UML constraints related to cardinality of subsetted and/or redefined Properties.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVCATUattributeuniqueness" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VCATU- attribute uniqueness"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] Validation Rule is enforced by UML Namespace constraints for names."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVUNTuse_nodereferencemodeltypevalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VUNT- use_node reference model type validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] validation rule is enforced by UML type constraints related to subsetted and/or redefined Properties.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVUNPuse_nodepathvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VUNP- use_node path validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(self.namespace.stereotypedBy('ComplexObjectConstraint') and self.aggregation=AggregationKind::none)&#xA;implies(&#xA;&#x9;(self.type.getNearestPackage()=self.getNearestPackage())&#xA;&#x9;or self.getNearestPackage().packageImport.importedPackage->includes(self.type.getNearestPackage())&#xA;)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSUNTuse_nodespecialisationparentvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSUNT- use_node specialisation parent validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A proxy is modeled using a Property aggregation of none. &#xA; The aggregation of a redefined/subsetted Property, and consequently whether or not the node is a Proxy, may be different than the archetype Property.&#xA;Therefore, it is permitted to use a proxy or regular node in a specialized archetype.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVOBAVobjectnodeassumedvaluevalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VOBAV- object node assumed value validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The value of an assumed value must fall within the value space defined by the constraint to which it is attached."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVACDFconstraintcodevalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VACDF- constraint code validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(self._'context'.stereotypedBy('ComplexObjectConstraint') &#xA; and self.specification.oclIsKindOf(Expression) &#xA; and (self.specification.oclAsType(Expression).symbol='=')&#xA;) &#xA;implies&#xA; self.specification.oclAsType(Expression).operand&#xA; ->forAll(o|o.oclIsKindOf(InstanceValue) &#xA; and o.oclAsType(InstanceValue).instance.stereotypedBy('ArchetypeTerm')&#xA; and o.oclAsType(InstanceValue).instance.getNearestPackage().nestingPackage.nestingPackage=self.getNearestPackage()&#xA; ) &#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSONPIspecialisedarchetypeprohibitedobjectnodeAOMnodeidvalidity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSONPI- specialised archetype prohibited object node [AOM] node id validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.attribute->select(a|a.upper=0).type->forAll(t|&#xA; &#xA; t.oclAsType(Classifier).general&#xA; ->forAll(g|g.appliedStereotype('ObjectConstraint').oclAsType(ObjectConstraint).id&#xA; ->forAll(e|e=t.appliedStereotype('ObjectConstraint').oclAsType(ObjectConstraint).id->asSequence()->first()) &#xA; ) &#xA;)"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_OBJECTInvariantRm_type_name_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_OBJECT:Invariant:Rm_type_name_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.general->forAll(g|not(g.name.oclIsUndefined()) and (g.name&lt;>''))&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_COMPLEX_OBJECTInvariantProhibited_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_COMPLEX_OBJECT:Invariant:Prohibited_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This Constraint is enforced by UML semantic for a Multiplicity upper bound of 0.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_COMPLEX_OBJECTInvariantAny_allowed_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_COMPLEX_OBJECT:Invariant:Any_allowed_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The invariant is definitional; it defines representation for a Property which has no value constraints (beyond the Reference Model type)."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_COMPLEX_OBJECTInvariantAttributes_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_COMPLEX_OBJECT:InvariantAttributes_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] invariant is always satisfied since its mapping to UML is ownedAttributes, which is a collection and is never oclIsUndefined()."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_COMPLEX_OBJECTTuples_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_COMPLEX_OBJECT:Tuples_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value=" self.base_Classifier.oclIsKindOf(Class)&#xA; implies&#xA; self.base_Classifier.oclAsType(Class).nestedClassifier&#xA; ->select(n|n.general->exists(g|g=self.base_Classifier)).attribute&#xA; ->forAll(a|a.subsettedProperty->forAll(s|s.namespace=self.base_Classifier)and a.redefinedProperty->forAll(s|s.namespace=self.base_Classifier))&#xA; &#xA; "/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_PRIMITIVE_OBJECTInvariantRepresentation_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_PRIMITIVE_OBJECT:Invariant:Representation_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA; self.namespace.stereotypedBy('ComplexObjectConstraint')&#xA; and (&#xA; (self.type.namespace.name='PrimitiveTypes')&#xA; or(self.type.namespace.name='XMLPrimitiveTypes') &#xA; or self.type.clientDependency->select(d|d.stereotypedBy('MappedDataType')).supplier->exists(t|(t.namespace.name='PrimitiveTypes')or(t.namespace.name='XMLPrimitiveTypes'))&#xA; )&#xA;) &#xA;implies&#xA;self.namespace.ownedRule->notEmpty()"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_PRIMITIVE_OBJECTInvariantAssumed_value_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_PRIMITIVE_OBJECT:Invariant:Assumed_value_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] C_PRIMITIVE_OBJECT/assumed_value maps to an AML Constraint on a Property whose specification includes a type-specific declaration of the assumed value.  &#xA;The assumed value is a ValueSpecification which should be typed in accordance with the type of the Property and should have a value in conformance with the constraints expressed on that Property's Type.&#xA;&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_BOOLEANInvariantBinary_consistency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_BOOLEAN:Invariant:Binary_consistency"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA; self.constrainedElement.oclIsKindOf(Property)&#xA; and self.constrainedElement.oclAsType(Property).namespace.stereotypedBy('ComplexObjectConstraint')&#xA; and (self.constrainedElement.oclAsType(Property).type.name='Boolean')&#xA; and self.specification.oclIsKindOf(Expression)&#xA; and ( self.specification.oclAsType(Expression).symbol='or')&#xA;)&#xA;implies(&#xA; &#xA; self.specification.oclAsType(Expression).operand->forAll(o|o.oclIsKindOf(LiteralBoolean))&#xA;)&#xA; &#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_BOOLEANInvariantPrototype_value_consistency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_BOOLEAN:Invariant:Prototype_value_consistency"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Each operand of an 'or' Expression must be a unique value.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_DATEInvariantPattern_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_DATE:Invariant:Pattern_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An [AOM] C_DATE/pattern_constraint (if present) maps to a the first operand of a 'P_C_DATE' Expression, &#xA;where that first operand is a LiteralString named 'pattern_constraint' and its value must conform to the ISO 8601 date constraint pattern. &#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_TERMINOLOGY_CODEInvariantTerminology_id_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_TERMINOLOGY_CODE:Invariant:Terminology_id_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self&#xA;->forAll(constraint|&#xA;&#x9;constraint.namespace.stereotypedBy('ComplexObjectConstraint') &#xA;&#x9;and constraint.constrainedElement->forAll(ce|ce.oclIsKindOf(Property))&#xA;&#x9;and constraint.specification.oclIsKindOf(Expression)&#xA;&#x9;and (constraint.specification.oclAsType(Expression).symbol='=')&#xA;&#x9;and constraint.specification.oclAsType(Expression).operand->forAll(o|o.oclIsKindOf(InstanceValue))&#xA;)&#xA;implies&#xA;self.specification.oclAsType(Expression).operand->forAll(o|o.oclAsType(InstanceValue).instance.stereotypedBy('ArchetypeTerm'))&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMASSERTIONInvariantTag_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ASSERTION:Invariant:Tag_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA; self.constrainedElement.oclIsKindOf(Property)&#xA; and self.constrainedElement.oclAsType(Property).namespace.stereotypedBy('ComplexObjectConstraint') &#xA;)&#xA;implies(&#xA; self.name.oclIsUndefined()&#xA; or (self.name&lt;>'')&#xA;) "/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMASSERTIONInvariantExpression_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ASSERTION:Invariant:Expression_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] invariant is enforced by the UML constraint that a Constraint specification must be of type Boolean."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMQUERY_VARIABLEInvariantContext_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] QUERY_VARIABLE:Invariant:Context_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA; self.namespace.stereotypedBy('ComplexObjectConstraint')&#xA; and not(self.specification.oclIsUndefined())&#xA; and self.specification.oclIsKindOf(OpaqueExpression)&#xA;)&#xA;implies(&#xA; self.specification.name.oclIsUndefined()&#xA; or(self.specification.name&lt;>'')&#xA;) &#xA; "/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMEXPR_ITEMInvariantType_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] EXPR_ITEM:Invariant:Type_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.getNearestPackage().stereotypedBy('Archetype') &#xA;implies&#xA;not(self.type.oclIsUndefined())"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMEXPR_UNARY_OPERATORInvariantoperand_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] EXPR_UNARY_OPERATOR:Invariant:operand_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA;&#x9;self.getNearestPackage().stereotypedBy('Archetype') &#xA;&#x9;and( &#xA;&#x9;&#x9;(self.symbol='=')&#xA;&#x9;&#x9;or (self.symbol='&lt;>')&#xA;&#x9;&#x9;or (self.symbol='&lt;=')&#xA;&#x9;&#x9;or (self.symbol='&lt;')&#xA;&#x9;&#x9;or (self.symbol='>=')&#xA;&#x9;&#x9;or (self.symbol='>')&#xA;&#x9;&#x9;or (self.symbol='matches')&#xA;&#x9;&#x9;or (self.symbol='and')&#xA;&#x9;&#x9;or (self.symbol='or')&#xA;&#x9;&#x9;or (self.symbol='xor')&#xA;&#x9;&#x9;or (self.symbol='implies')&#xA;&#x9;&#x9;or (self.symbol='for_all')&#xA;&#x9;&#x9;or (self.symbol='exists')&#xA;&#x9;&#x9;or (self.symbol='+')&#xA;&#x9;&#x9;or (self.symbol='-')&#xA;&#x9;&#x9;or (self.symbol='*')&#xA;&#x9;&#x9;or (self.symbol='/')&#xA;&#x9;&#x9;or (self.symbol='^')&#xA;&#xA;&#x9;)&#xA;)&#xA;implies&#xA;(self.operand->size()=1)"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMEXPR_BINARY_OPERATORInvariantleft_operand_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] EXPR_BINARY_OPERATOR:Invariant:left_operand_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA;&#x9;self.getNearestPackage().stereotypedBy('Archetype') &#xA;&#x9;and( &#xA;&#x9;&#x9;(self.symbol='=')&#xA;&#x9;&#x9;or (self.symbol='&lt;>')&#xA;&#x9;&#x9;or (self.symbol='&lt;=')&#xA;&#x9;&#x9;or (self.symbol='&lt;')&#xA;&#x9;&#x9;or (self.symbol='>=')&#xA;&#x9;&#x9;or (self.symbol='>')&#xA;&#x9;&#x9;or (self.symbol='matches')&#xA;&#x9;&#x9;or (self.symbol='and')&#xA;&#x9;&#x9;or (self.symbol='or')&#xA;&#x9;&#x9;or (self.symbol='xor')&#xA;&#x9;&#x9;or (self.symbol='implies')&#xA;&#x9;&#x9;or (self.symbol='for_all')&#xA;&#x9;&#x9;or (self.symbol='exists')&#xA;&#x9;&#x9;or (self.symbol='+')&#xA;&#x9;&#x9;or (self.symbol='-')&#xA;&#x9;&#x9;or (self.symbol='*')&#xA;&#x9;&#x9;or (self.symbol='/')&#xA;&#x9;&#x9;or (self.symbol='^')&#xA;&#xA;&#x9;)&#xA;)&#xA;implies&#xA;(self.operand->size()=2)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMEXPR_BINARY_OPERATORInvariantright_operand_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] EXPR_BINARY_OPERATOR:Invariant:right_operand_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA;&#x9;self.getNearestPackage().stereotypedBy('Archetype') &#xA;&#x9;and( &#xA;&#x9;&#x9;(self.symbol='=')&#xA;&#x9;&#x9;or (self.symbol='&lt;>')&#xA;&#x9;&#x9;or (self.symbol='&lt;=')&#xA;&#x9;&#x9;or (self.symbol='&lt;')&#xA;&#x9;&#x9;or (self.symbol='>=')&#xA;&#x9;&#x9;or (self.symbol='>')&#xA;&#x9;&#x9;or (self.symbol='matches')&#xA;&#x9;&#x9;or (self.symbol='and')&#xA;&#x9;&#x9;or (self.symbol='or')&#xA;&#x9;&#x9;or (self.symbol='xor')&#xA;&#x9;&#x9;or (self.symbol='implies')&#xA;&#x9;&#x9;or (self.symbol='for_all')&#xA;&#x9;&#x9;or (self.symbol='exists')&#xA;&#x9;&#x9;or (self.symbol='+')&#xA;&#x9;&#x9;or (self.symbol='-')&#xA;&#x9;&#x9;or (self.symbol='*')&#xA;&#x9;&#x9;or (self.symbol='/')&#xA;&#x9;&#x9;or (self.symbol='^')&#xA;&#xA;&#x9;)&#xA;)&#xA;implies&#xA;(self.operand->size()=2)"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMOPERATOR_KINDInvariantValidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] OPERATOR_KIND:Invariant:Validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA;&#x9;self.getNearestPackage().stereotypedBy('Archetype') &#xA;&#x9;and( &#xA;&#x9;&#x9;(self.symbol='=')&#xA;&#x9;&#x9;or (self.symbol='&lt;>')&#xA;&#x9;&#x9;or (self.symbol='&lt;=')&#xA;&#x9;&#x9;or (self.symbol='&lt;')&#xA;&#x9;&#x9;or (self.symbol='>=')&#xA;&#x9;&#x9;or (self.symbol='>')&#xA;&#x9;&#x9;or (self.symbol='matches')&#xA;&#x9;&#x9;or (self.symbol='and')&#xA;&#x9;&#x9;or (self.symbol='or')&#xA;&#x9;&#x9;or (self.symbol='xor')&#xA;&#x9;&#x9;or (self.symbol='implies')&#xA;&#x9;&#x9;or (self.symbol='for_all')&#xA;&#x9;&#x9;or (self.symbol='exists')&#xA;&#x9;&#x9;or (self.symbol='+')&#xA;&#x9;&#x9;or (self.symbol='-')&#xA;&#x9;&#x9;or (self.symbol='*')&#xA;&#x9;&#x9;or (self.symbol='/')&#xA;&#x9;&#x9;or (self.symbol='^')&#xA;&#xA;&#x9;)&#xA;)&#xA;implies(&#xA;(self.operand->size()=2)&#xA;or (self.operand->size()=1)&#xA;)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVATDFvaluecodevalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VATDF- value code validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self->select(constraint|constraint.namespace.stereotypedBy('ComplexObjectConstraint') and constraint.constrainedElement->forAll(ce|ce.oclIsKindOf(Property)))&#xA;->select(c|c.specification&#xA;&#x9;->forAll(e|e.oclIsKindOf(Expression) and (e.oclAsType(Expression).symbol='=') and (e.oclAsType(Expression).operand->forAll(o|o.oclIsKindOf(InstanceValue))))&#xA;).constrainedElement&#xA;implies&#xA;self.specification.oclAsType(Expression).operand.oclAsType(InstanceValue)&#xA;->forAll(o|o.instance.stereotypedBy('ArchetypeTerm') and (o.namespace.namespace.namespace.namespace=self.namespace.namespace))&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVATDAvaluesetassumedvaluecodevalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VATDA- value set assumed value code validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self->select(constraint|constraint.namespace.stereotypedBy('ComplexObjectConstraint') and constraint.constrainedElement->forAll(ce|ce.oclIsKindOf(Property)))&#xA;->select(c|c.specification&#xA;&#x9;->forAll(e|e.oclIsKindOf(Expression) and (e.oclAsType(Expression).symbol='=') and (e.oclAsType(Expression).operand->forAll(o|o.oclIsKindOf(InstanceValue))))&#xA;).constrainedElement&#xA;implies&#xA;self.specification.oclAsType(Expression).operand.oclAsType(InstanceValue)&#xA;->forAll(o|o.instance.stereotypedBy('ArchetypeTerm') and (o.namespace.namespace.namespace.namespace=self.namespace.namespace))&#xA;&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSONIFspecialisedarchetypeobjectnodeidentifiervalidityinflatsiblings"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSONIF- specialised archetype object node identifier validity in flat siblings"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.oclIsKindOf(Class)&#xA;implies&#xA;self.base_Classifier.oclAsType(Class).ownedAttribute->forAll(attribute|&#xA;&#x9;(&#xA;&#x9;&#x9;attribute.stereotypedBy('ObjectConstraint')&#xA;&#x9;&#x9;and&#xA;&#x9;&#x9;( &#xA;&#x9;&#x9; self.base_Classifier.oclAsType(Class).ownedAttribute->select(a|a&lt;>attribute)->forAll(sibling| &#xA;&#x9;&#x9; (&#xA;&#x9;&#x9; sibling.stereotypedBy('ObjectConstraint') &#xA;&#x9;&#x9; and&#xA;&#x9;&#x9; not(sibling.appliedStereotype('ObjectConstraint').oclAsType(ObjectConstraint).id->includes(attribute.appliedStereotype('ObjectConstraint').oclAsType(ObjectConstraint).id->asSequence()->first()))&#xA;&#x9;&#x9; )&#xA;&#x9;&#x9; or(&#xA;&#x9;&#x9; sibling.type.stereotypedBy('ObjectConstraint') &#xA; and&#xA; not(sibling.type.appliedStereotype('ObjectConstraint').oclAsType(ObjectConstraint).id->includes(attribute.appliedStereotype('ObjectConstraint').oclAsType(ObjectConstraint).id->asSequence()->first()))&#xA;&#x9;&#x9; ) &#xA;&#x9;&#x9; )&#xA;&#x9;&#x9;)&#xA;&#x9;)&#xA;&#x9;or(&#xA;&#x9;&#x9;attribute.type.stereotypedBy('ObjectConstraint')&#xA;&#x9;&#x9;and&#xA;&#x9;&#x9;(&#xA;&#x9;&#x9; self.base_Classifier.oclAsType(Class).ownedAttribute->select(a|a&lt;>attribute)->forAll(sibling| &#xA; (&#xA; sibling.stereotypedBy('ObjectConstraint') &#xA; and&#xA; not(sibling.appliedStereotype('ObjectConstraint').oclAsType(ObjectConstraint).id->includes(attribute.type.appliedStereotype('ObjectConstraint').oclAsType(ObjectConstraint).id->asSequence()->first()))&#xA; )&#xA; or(&#xA; sibling.type.stereotypedBy('ObjectConstraint') &#xA; and&#xA; not(sibling.type.appliedStereotype('ObjectConstraint').oclAsType(ObjectConstraint).id->includes(attribute.type.appliedStereotype('ObjectConstraint').oclAsType(ObjectConstraint).id->asSequence()->first()))&#xA; ) &#xA; )&#xA;&#x9;&#x9;)&#xA;&#x9;)&#xA;)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_COMPLEX_OBJECT_PROXYInvariantConsistency" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_COMPLEX_OBJECT_PROXY:Invariant:Consistency"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="((self.aggregation=AggregationKind::none) and self.namespace.stereotypedBy('ComplexObjectConstraint'))&#xA;implies&#xA;self.type.getNearestReferenceModel().oclIsUndefined()&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_ATTRIBUTEInvariantChildren_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_ATTRIBUTE:Invariant:Children_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA; self.namespace.stereotypedBy('ComplexObjectConstraint')&#xA; and not(self.type.getNearestReferenceModel().oclIsUndefined())&#xA;) &#xA;implies&#xA; self.namespace.oclAsType(Class).ownedAttribute&#xA; ->select(a|&#xA; (a&lt;>self) &#xA; and not(a.subsetsProperty->includes(self.subsetsProperty->first())) &#xA; and not(a.redefinesProperty->includes(self.redefinesProperty->first()))&#xA; ) &#xA; ->isEmpty()&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_ATTRIBUTEInvariantChildren_orphans_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_ATTRIBUTE:Invariant:Children_orphans_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self->select(s|s.namespace.stereotypedBy('ComplexObjectConstraint'))&#xA;.subsettedProperty->union(self.redefinedProperty)&#xA;->select(r|r.upper>0)&#xA;->forAll(refProperty|&#xA;&#x9;self.namespace.oclAsType(Class).ownedAttribute->select(sibling|sibling.subsettedProperty->union(sibling.redefinedProperty)->includes(refProperty))&#xA;&#x9;->select(p|p.lower>0)&#xA;&#x9;->size()&lt;refProperty.upper&#xA;)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_ATTRIBUTEInvariantChildren_occurrences_lower_sum_validity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_ATTRIBUTE:Invariant:Children_occurrences_lower_sum_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self->select(s|s.namespace.stereotypedBy('ComplexObjectConstraint'))&#xA;.subsettedProperty->union(self.redefinedProperty)&#xA;->select(r|r.upper>0)&#xA;->forAll(refProperty|&#xA;&#x9;self.namespace.oclAsType(Class).ownedAttribute->select(sibling|sibling.subsettedProperty->union(sibling.redefinedProperty)->includes(refProperty))&#xA;&#x9;.lower->sum()&lt;=refProperty.upper&#xA;)&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_ATTRIBUTEInvariantCardinality_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_ATTRIBUTE:Invariant:Cardinality_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self->select(s|s.namespace.stereotypedBy('ComplexObjectConstraint'))&#xA;.subsettedProperty->union(self.redefinedProperty)&#xA;->select(r|r.upper>0)&#xA;->forAll(refProperty|&#xA;&#x9;self.namespace.oclAsType(Class).ownedAttribute->select(sibling|sibling.subsettedProperty->union(sibling.redefinedProperty)->includes(refProperty))&#xA;&#x9;->forAll(p|p.aggregation=self.aggregation)&#xA;)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_ATTRIBUTEInvariantAlternatives_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_ATTRIBUTE:Invariant:Alternatives_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self->select(s|s.namespace.stereotypedBy('ComplexObjectConstraint'))&#xA;.subsettedProperty->union(self.redefinedProperty)&#xA;->select(r|r.upper=1)&#xA;->forAll(refProperty|&#xA;&#x9;self.namespace.oclAsType(Class).ownedAttribute->select(sibling|sibling.subsettedProperty->union(sibling.redefinedProperty)->includes(refProperty))&#xA;&#x9;->forAll(p|p.upper=1)&#xA;)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_Classifier" ordered="false"
lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Classifier"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ObjectConstraint" eSuperTypes="terminology.ecore#//IdentifiedItem">
<eOperations name="redefinesGeneralization" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_NamedElement.oclIsKindOf(Classifier) implies(&#xA; self.base_NamedElement.oclAsType(Classifier).generalization->forAll(x|x.stereotypedBy('Constrains'))&#xA; and &#xA; (self.base_NamedElement.oclAsType(Classifier).generalization->size() = 1)&#xA; )"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVCORMobjectconstrainttypenameexistence" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VCORM- object constraint type name existence"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="All Reference Model types are explicitly inherited and/or referenced as types from an archetype structure. &#xA;Thus the UML model will always use types defined in the underlying Reference Model information model. &#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVCORMTobjectconstrainttypevalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VCORMT - object constraint type validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] validation rule is enforced by UML type conformance constraints associated with subsetted and/or redefined Properties.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVCOCDobjectconstraintdefinitionvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VCOCD- object constraint definition validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] rule is definitional; subtypes of Object Constraint define content and semantics.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVCOIDobjectnodeidentifiervalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VCOID- object node identifier validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An object constraint may have an id (which maps to [AOM] node_id) specified as a tag. &#xA;If not specified, than an implicit node_id is based on the object constraint name. &#xA;In case of constraints on primitive types, the derived node_id may have an implied value starting with 'id9999'.&#xA;As a consequence of the UML defaults described, there will be a node identifier associated with every object constraint node.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVCOSUobjectnodeidentifiervalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VCOSU- object node identifier validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Object node identifiers are the names of Archetype Term EnumerationLiterals within the Definition Identifier and their uniqueness is enforced by UML name constraints.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSONTspecialisedarchetypeobjectnodemetatypeconformance"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSONT- specialised archetype object node meta-type conformance"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA;&#x9;(self.base_NamedElement.stereotypedBy('ComplexObjectConstraint') and not self.base_NamedElement.oclAsType(Classifier).general->forAll(g|g.getNearestReferenceModel().oclIsUndefined()))&#xA;&#x9;implies&#xA;&#x9;self.base_NamedElement.oclAsType(Classifier).general->forAll(g|g.stereotypedBy('ComplexObjectConstraint'))&#xA;) &#xA;and&#xA;(&#xA;&#x9;(self.base_NamedElement.stereotypedBy('ArchetypeRoot') and not self.base_NamedElement.oclAsType(Classifier).general->forAll(g|g.getNearestReferenceModel().oclIsUndefined()))&#xA;&#x9;implies&#xA;&#x9;self.base_NamedElement.oclAsType(Classifier).general->forAll(g|g.stereotypedBy('ArchetypeRoot') or g.stereotypedBy('ArchetypeSlot'))&#xA;) &#xA;and &#xA;(&#xA;&#x9;(self.base_NamedElement.stereotypedBy('ArchetypeSlot') and not self.base_NamedElement.oclAsType(Classifier).general->forAll(g|g.getNearestReferenceModel().oclIsUndefined()))&#xA;&#x9;implies&#xA;&#x9;self.base_NamedElement.oclAsType(Classifier).general->forAll(g|g.stereotypedBy('ArchetypeSlot'))&#xA;) &#xA;&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSONCTspecialisedarchetypeobjectnodereferencetypeconformance"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSONCT- specialised archetype object node reference type conformance"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] validation rule is enforced by UML inheritance from the specialized archetype, which itself inherits directly or indirectly from a Reference Model.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSONINspecialisedarchetypenewobjectnodeidentifiervalidity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSONIN- specialised archetype new object node identifier validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value=" If an object constraint node in a specialized archetype is a new node with respect to the flat parent, and it carries a node identifier, the identifier must be a ‘new’ node identifier, specialized at the level of the child archetype."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSONCOspecialisedarchetyperedefineobjectnodeoccurrencesvalidity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSONCO- specialised archetype redefine object node occurrences validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] validation rule is enforced by UML multiplicity constraints for subsetted and/or redefined Properties.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSONPTspecialisedarchetypeprohibitedobjectnodeAOMtypevalidity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSONPT- specialised archetype prohibited object node [AOM] type validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA;&#x9;self.namespace->select(n|n.stereotypedBy('ComplexObjectConstraint') ).oclAsType(Classifier).general->forAll(g|g.stereotypedBy('ComplexObjectConstraint'))&#xA;&#x9;and (self.upper=0)&#xA;)&#xA;implies(&#xA;self.redefinedProperty.type->forAll(t|t=self.type)&#xA;and self.subsettedProperty.type->forAll(t|t=self.type)&#xA;)&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSONPOspecialisedarchetypeobjectnodeprohibitedoccurrencesvalidity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSONPO- specialised archetype object node prohibited occurrences validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.namespace->select(n|n.stereotypedBy('ComplexObjectConstraint') ).oclAsType(Classifier).general->select(g|g.stereotypedBy('ComplexObjectConstraint'))->isEmpty()&#xA;implies&#xA;(self.upper&lt;>0)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVSSMspecialisedarchetypesiblingordervalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VSSM- specialised archetype sibling order validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The order of sibling children are enforced by the UML semantics of List for the ordered Attributes of a Class.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPE_CONSTRAINInvariantpath_exists" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE_CONSTRAIN:Invariant:path_exists"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="In AML, the path to a node is implicit. Thus, the path is never undefined and the path exists."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_ATTRIBUTEInvariantRm_attribute_name_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_ATTRIBUTE:Invariant:Rm_attribute_name_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_NamedElement.oclIsKindOf(Property) implies&#xA;self.base_NamedElement.oclAsType(Property)->forAll(p|p.redefinedProperty->notEmpty() or p.subsettedProperty->notEmpty())&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_ATTRIBUTEInvariantExistence_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_ATTRIBUTE:Invariant:Existence_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="In AML, existence is implicit and will have a lower, upper in the range of this invariant."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_ATTRIBUTEInvariantDifferential_path_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_ATTRIBUTE:Invariant:[Differential_path_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] Invariant is enforced during mapping from AML to [AOM]."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_ATTRIBUTEInvariantChild_occurrences_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_ATTRIBUTE:Invariant:Child_occurrences_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] invariant is implemented by UML constraints regarding cardinality of subsetted/redefined Properties."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMCARDINALITYInvariantValidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] CARDINALITY:Invariant:Validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="UML types lower bound as Integer (instead of UnlimitedNatural). Thus, lower bound cannot be unbounded."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_OBJECTInvariantNode_id_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_OBJECT:Invariant:Node_id_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.id&#xA;->forAll(i|i.stereotypedBy('ArchetypeTerm'))&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_OBJECTInvariantOccurrences_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_OBJECT:Invariant:Occurrences_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] invariant is enforced by the UML constraints covering cardinality of subsetted/redefined properties."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_OBJECTInvariantSibling_order_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_OBJECT:Invariant:Sibling_order_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] sibling_order is mapped from a merge of the current attribute children with the parent Classifier in the parent Archetype."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMSIBLING_ORDERInvariantsibling_node_id_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] SIBLING_ORDER:Invariant:sibling_node_id_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The order of children of an attribute is enforced by the UML semantic for Property ordering."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_DEFINED_OBJECTInvariantDefault_value_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_DEFINED_OBJECT:Invariant:Default_value_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Validation of type constraints for defaultValue of a Property is enforced by UML Property type and instance semantics. &#xA; Value restrictions are expressed as Constraints on the Property, but are not necessarily enforceable by UML semantics directly."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_COMPLEX_OBJECT_PROXYTarget_path_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_COMPLEX_OBJECT_PROXY:Target_path_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(self.oclIsKindOf(Property) and (self.oclAsType(Property).aggregation=AggregationKind::none)and self.namespace.stereotypedBy('ComplexObjectConstraint'))&#xA;implies&#xA;not(self.oclAsType(Property).type.oclIsUndefined())&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="is_deprecated" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Constrains">
<eOperations name="specificObjectConstraint" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Generalization.specific.stereotypedBy('ObjectConstraint')"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="constrainsRMElement" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(&#xA;self.base_Generalization.specific.namespace.oclAsType(Package).nestingPackage.packageImport.importedPackage&#xA;->select(p|p.stereotypedBy('ReferenceModel'))->exists(referenceModel|self.base_Generalization.general.getNearestReferenceModel()=referenceModel)&#xA;)&#xA;or&#xA;self.base_Generalization.general.stereotypedBy('ObjectConstraint')"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_Generalization" ordered="false"
lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Generalization"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ArchetypeLibrary">
<eOperations name="oneReferenceModel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value=" self.base_Package.packageImport.importedPackage->select(stereotypedBy('ReferenceModel'))->size() = 1"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="onlyArchetypes" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.packagedElement->forAll(p|p.stereotypedBy('Archetype'))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPE_HRIDInvariantRm_closure_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE_HRID:Invariant:Rm_closure_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] Invariant is enforced by the UML semantic for a required Property."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_Package" ordered="false"
lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Package"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="has_aom_ids" ordered="false"
lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"
defaultValueLiteral="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="rm_package" ordered="false"
lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Archetype" eSuperTypes="#//AuthoredResource">
<eOperations name="mustBeOwned" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value=" self.base_Package.owningPackage.stereotypedBy('ArchetypeLibrary')&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="ownsObjectConstraints" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.ownedType->select(x|x.oclIsKindOf(Classifier) and not(x.oclIsKindOf(Association)))->forAll(x|x.stereotypedBy('ObjectConstraint'))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="specializesArchetype" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value=" self.base_Package.packageImport.importedPackage&#xA; ->select(p|p.stereotypedBy('Archetype')).clientDependency&#xA; ->select(t|t.stereotypedBy('ArchetypeDefinition')).supplier.oclAsType(Classifier).general&#xA; ->forAll(x|self.base_Package.clientDependency->select(t|t.stereotypedBy('ArchetypeDefinition')).supplier.oclAsType(Classifier).general->includes(x))&#xA; "/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVOKUobjectkeyunique" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VOKU- object key unique"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] validation rule is enforced by the UML constraint that names within a namespace must be unique.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVARDTarchetypedefinitiontypenamevalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VARDT- archetype definition typename validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="In AML, the typename in the archetype id is derived from the name of the constrained RM Type in the outer block of the archetype definition section, &#xA;so the [AOM] validity rule is always satisfied.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVARIDarchetypeidentifiervalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VARID- archetype identifier validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.release_version.match('[0-9]*(\\.[0-9]*(\\.[0-9]*)?)?')&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVDEOLoriginallanguagespecified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VDEOL- original language specified"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.clientDependency&#xA;&#x9;->select(d|d.oclIsKindOf(Usage) and (d.name='original_language')).supplier&#xA;&#x9;->select(s|s.stereotypedBy('ResourceTranslation'))&#xA;&#x9;->notEmpty()&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVARDdescriptionspecified" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VARD- description specified"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(self.archetypeType.repr()&lt;>'template_overlay')&#xA;implies&#xA;self.base_Package.clientDependency.supplier->select(d|d.stereotypedBy('ResourceTranslation'))->notEmpty()&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVASIDarchetypespecialisationparentidentifiervalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VASID- archetype specialisation parent identifier validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.packageImport.importedPackage->select(p|p.stereotypedBy('Archetype'))->size()&lt;=1&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVALCarchetypelanguageconformance" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VALC- archetype language conformance"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value=" self.base_Package.packageImport.importedPackage&#xA;&#x9;->forAll(superArch|self.base_Package.clientDependency.supplier->select(s|s.stereotypedBy('ResourceTranslation')).name&#xA;&#x9;&#x9;->forAll(language|superArch.clientDependency.supplier->select(s|s.stereotypedBy('ResourceTranslation')).name->exists(n|n=language))&#xA;&#x9;)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVACSDarchetypeconceptspecialisationdepth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VACSD- archetype concept specialisation depth"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] Validation Rule is definitional for AML-UML;&#xA;the specialisation_depth is implicitly derived from the number of parent-archetype specializations above the current archetype.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVATCDarchetypecodespecialisationlevelvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VATCD- archetype code specialisation level validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The specialization level used for archetype terms and constraint codes are derived and enforced during mapping to [AOM] to conform with the specialization level validity constraint.&#xA; "/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPEInvariantOriginal_language_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE:Invariant:Original_language_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.clientDependency->select(d|d.oclIsKindOf(Usage) and (d.name='original_language')).supplier&#xA;->select(e|e.stereotypedBy('ResourceTranslation'))&#xA;->size()=1&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPEInvariantConcept_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE:Invariant:Concept_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.clientDependency&#xA;->select(d|d.stereotypedBy('ArchetypeDefinition')).supplier->exists(s|s.appliedStereotypeInstance.oclAsType(ComplexObjectConstraint).id->notEmpty()) &#xA; &#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPEInvariantDefinition_exists" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE:Invariant:Definition_exists"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.clientDependency&#xA; ->exists(d|d.stereotypedBy('ArchetypeDefinition') )"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPEInvariantTerminology_exists" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE:Invariant:Terminology_exists"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.nestedPackage.nestedPackage.ownedType->exists(o|o.stereotypedBy('ResourceTranslation'))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPEInvariantSpecialisation_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE:Invariant:Specialisation_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="During AML transformations, is_specialised is derived and will be consistent with specialisation_depth, which is also derived."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPEInvariantRules_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE:Invariant:Rules_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] Invariant is definitional in AML. In AML, if rules is empty, it implies rules are undefined. "/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPE_HRIDInvariantConcept_id_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE_HRID:Invariant:Concept_id_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="not(self.base_Package.name.oclIsUndefined()) and (self.base_Package.name&lt;>'')"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPE_HRIDInvariantBase_version_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE_HRID:Invariant:Base_version_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The release_version tag is required, so this [AOM] invariant is enforced by [UML] semantics."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMOPERATIONAL_TEMPLATEInvariantIs_specialised" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] OPERATIONAL_TEMPLATE:Invariant:Is_specialised"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This [AOM] invariant is definitional in AML."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMOPERATIONAL_TEMPLATEInvariantComponent_terminologies_existence"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] OPERATIONAL_TEMPLATE:Invariant:Component_terminologies_existence"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The compendium of terminologies from externally archetypes is derivable from the AML model. &#xA;Although not explicitly defined in AML, it is conceptually derivable from an Archetype.&#xA;The derived value would contain a list of the flattened terminologies from the externally referenced archetypes.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPE_TERMINOLOGYInvariantoriginal_language_validity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE_TERMINOLOGY:Invariant:original_language_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.clientDependency->select(d|d.oclIsKindOf(Usage) and (d.name='terminology_original_language')).supplier&#xA;->select(e|e.stereotypedBy('ResourceTranslation'))&#xA;->size()=1"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPE_TERMINOLOGYInvariantconcept_code_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE_TERMINOLOGY:Invariant:concept_code_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.clientDependency&#xA;->select(d|d.stereotypedBy('ArchetypeDefinition')).supplier->exists(s|s.appliedStereotypeInstance.oclAsType(ComplexObjectConstraint).id->notEmpty()) &#xA; "/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPE_TERMINOLOGYInvariantterm_definitions_validity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE_TERMINOLOGY:Invariant:term_definitions_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.clientDependency->select(d|d.oclIsKindOf(Usage) and (d.name='original_language')).supplier&#xA;->exists(e|e.stereotypedBy('ResourceTranslation'))&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPE_TERMINOLOGYInvariantParent_archetype_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE_TERMINOLOGY:Invariant:Parent_archetype_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Package.nestedPackage->exists(p|p.name='ontology')"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVARIABLE_DECLARATIONInvariantName_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VARIABLE_DECLARATION:Invariant:Name_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.namespace.stereotypedBy('Namespace')&#xA;implies(&#xA; &#xA; not( self.name.oclIsUndefined())&#xA; and(self.name&lt;>'')&#xA;)"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_Package" ordered="false"
lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Package"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="archetypeType" ordered="false"
eType="ecore:EEnum terminology.ecore#//ArchetypeType"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="amlVersion" ordered="false"
lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="is_controlled" ordered="false"
lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"
defaultValueLiteral="false"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="is_generated" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"
defaultValueLiteral="false"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="release_version" ordered="false"
lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="version_status" ordered="false"
lowerBound="1" eType="#//VERSION_STATUS"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="build_count" ordered="false"
lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="other_metadata" ordered="false"
upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="other_metadata_id" ordered="false"
upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AuthoredResource" abstract="true">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="copyright" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="current_revision" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="custodian_namespace" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="custodian_organisation"
ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="licence" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="lifecycle_state" ordered="false"
lowerBound="1" eType="#//Lifecycle_state"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="original_author_date" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="original_author_email"
ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="original_author_name" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="original_author_organization"
ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="original_namespace" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="original_publisher" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="other_contributors" ordered="false"
upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="otherDetails" ordered="false"
upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="otherDetails_id" ordered="false"
upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="references" ordered="false"
upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="references_id" ordered="false"
upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="resourceDocumentLanguage"
ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="resourceDocumentSyntax"
ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="resourceSource" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="resourceSourceURI" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_Namespace" ordered="false"
lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Namespace"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="resource_package_uri" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="uid" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="ip_acknowledgements" ordered="false"
upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="ip_acknowledgements_id"
ordered="false" upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="Lifecycle_state">
<eLiterals name="unmanaged"/>
<eLiterals name="in_development" value="1"/>
<eLiterals name="release_candidate" value="2"/>
<eLiterals name="published" value="3"/>
<eLiterals name="rejected" value="4"/>
<eLiterals name="deprecated" value="5"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="VERSION_STATUS">
<eLiterals name="alpha"/>
<eLiterals name="beta" value="1"/>
<eLiterals name="release_candidate" value="2"/>
<eLiterals name="released" value="3"/>
<eLiterals name="build" value="4"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ResourceTranslation">
<eOperations name="_AOMVOTMterminologytranslationsvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VOTM- terminology translations validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Enumeration.ownedLiteral->notEmpty()&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="translationEntries" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Enumeration.ownedLiteral->forAll(ol|ol.stereotypedBy('IdEntry'))&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="uniqueEntries" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Enumeration.ownedLiteral->size()&#xA;=&#xA;self.base_Enumeration.ownedLiteral.appliedStereotype('IdEntry').oclAsType(IdEntry).ref->asSet()->size()&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_Enumeration" ordered="false"
lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Enumeration"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="accreditation" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="other_translation_details"
ordered="false" upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="other_translation_details_id"
ordered="false" upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="purpose" ordered="false"
lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="keywords" ordered="false"
upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="use" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="misuse" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="copyright" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="original_resource_uri"
ordered="false" upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="original_resource_uriId"
ordered="false" upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="other_details" ordered="false"
upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="other_detailsId" ordered="false"
upperBound="-1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="author_name" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="author_organization" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="author_email" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="author_date" ordered="false"
eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="version_last_translated"
ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ArchetypeDefinition">
<eOperations name="_AOMARCHETYPE_HRIDInvariantRm_class_name_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE_HRID:Invariant:Rm_class_name_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Usage.supplier->exists(s|s.stereotypedBy('ObjectConstraint') and s.oclAsType(Classifier).general->notEmpty())&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_Usage" ordered="false"
lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Usage"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ArchetypeSlot" eSuperTypes="#//ObjectConstraint">
<eOperations name="_AOMVDSSPspecialisedarchetypeslotdefinitionparentvalidity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VDSSP- specialised archetype slot definition parent validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.general->forAll(g|g.stereotypedBy('ARCHETYPE_SLOT'))&#xA;implies&#xA;self.base_Classifier.general->forAll(g|not(g.isLeaf))&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVDSEVarchetypeslotexcludeconstraintvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VDSEV- archetype slot ‘exclude’ constraint validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.ownedRule.specification->select(r|r.oclAsType(Expression).symbol='includes')->notEmpty()&#xA;implies&#xA;self.base_Classifier.ownedRule.specification->select(r|r.oclAsType(Expression).symbol='excludes')->isEmpty()&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVDSSMspecialisedarchetypeslotdefinitionmatchvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VDSSM- specialised archetype slot definition match validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The set of archetypes matched from a library of archetypes by a specialized archetype slot definition &#xA;must be a proper subset of the set matched from the same library by the parent slot definition."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVDSSIDslotredefinitionchildnodeid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VDSSID- slot redefinition child node id"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.general->forAll(g|g.stereotypedBy('ArchetypeRoot'))&#xA;implies&#xA;(self.base_Classifier.appliedStereotype('ArchetypeRoot').oclAsType(ArchetypeRoot).id&#xA; ->forAll(e|e&#x9;=self.base_Classifier.general.appliedStereotype('ArchetypeRoot').oclAsType(ArchetypeRoot).id->asSequence()->first())&#xA;)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVDSSCspecialisedarchetypeslotdefinitionclosedvalidity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VDSSC- specialised archetype slot definition closed validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.general->forAll(g|g.stereotypedBy('ARCHETYPE_ROOT'))&#xA;implies&#xA;(self.base_Classifier.ownedRule->isEmpty()=self.base_Classifier.isLeaf)&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVDSIVarchetypeslotincludeconstraintvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VDSIV- archetype slot ‘include’ constraint validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="(self.base_Classifier.ownedRule->select(r|r.specification.oclAsType(Expression).symbol='excludes')->notEmpty())&#xA;implies&#xA;(self.base_Classifier.ownedRule->select(r|r.specification.oclAsType(Expression).symbol='includes')->isEmpty())&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPE_SLOTInvariantincludes_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE_SLOT:Invariant:includes_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] Invariant is definitional for AML. An undefined [AOM] ARCHETYPE_SLOT/includes maps to an empty list of include Expressions.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMARCHETYPE_SLOTInvariantexcludes_valid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] ARCHETYPE_SLOT:Invariant:excludes_valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] Invariant is definitional for AML. An undefined [AOM] ARCHETYPE_SLOT/excludes maps to an empty list of exclude Expressions."/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_Classifier" ordered="false"
lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Classifier"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ArchetypeRoot" eSuperTypes="#//ComplexObjectConstraint">
<eOperations name="_AOMVARXNCexternalreferencenodeidentifiervalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VARXNC- external reference node identifier validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.general->forAll(g|g.stereotypedBy('ArchetypeRoot')or g.stereotypedBy('ArchetypeSlot'))&#xA;implies&#xA;self.id.oclAsType(EnumerationLiteral)&#xA;->forAll(e|e.name.startsWith(self.base_Classifier.general.appliedStereotypeInstance.oclAsType(ObjectConstraint).id.oclAsType(EnumerationLiteral).name->asSequence()->first()))&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVARXTVexternalreferencetypevalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VARXTV- external reference type validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The [AOM] Validation Rule is enforced by UML semantics for inheritance, &#xA;since the «ArchetypeRoot» inherits from the «ArchetypeSlot» in the archetype parent archetype&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVARXSexternalreferenceconformstoslot" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VARXS- external reference conforms to slot"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.general.namespace.namespace->forAll(al|al=self.base_Classifier.namespace.namespace)&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVARXRexternalreferencereferstoresolvableartefact" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VARXR- external reference refers to resolvable artefact"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="In AML-UML, the archetype reference is modeled using inheritance, which enforces that the referenced artefact is accessible.&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVARXIDexternalreferenceslotfillingidvalidity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VARXID- external reference slot filling id validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.general->forAll(g|g.stereotypedBy('ArchetypeRoot')or g.stereotypedBy('ArchetypeSlot'))&#xA;implies&#xA;self.id.oclAsType(EnumerationLiteral)&#xA;->forAll(e|e.name.startsWith(&#xA; self.base_Classifier.general.appliedStereotype('ObjectConstraint').oclAsType(ObjectConstraint).id.oclAsType(EnumerationLiteral).name->asSequence()->first()&#xA; ) &#xA; )&#xA;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMC_ARCHETYPE_ROOTInvariantArchetype_ref_validity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] C_ARCHETYPE_ROOT:Invariant:Archetype_ref_validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.general.supplierDependency.client->exists(g|g.stereotypedBy('Archetype'))&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eOperations name="_AOMVARXAVexternalreferencenodearchetypereferencevalidity"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VARXAV- external reference node archetype reference validity"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="self.base_Classifier.general->forAll(g|g.stereotypedBy('ArchetypeRoot'))&#xA;implies&#xA;self.base_Classifier.general.general&#xA;->forAll(g|g.namespace=self.base_Classifier.namespace.oclAsType(Package).packageImport.importedPackage->select(p|p.stereotypedBy('Archetype'))->asSequence()->first())&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ResourceAnnotationNodeItem">
<eOperations name="_AOMVRANPannotationpathvalid" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
<details key="originalName" value="[AOM] VRANP- annotation path valid"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="not(self.base_Comment.annotatedElement->includes(self.base_Comment.owningElement))&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The chain of diagnostics to which problems are to be appended."/>
</eAnnotations>
</eParameters>
<eParameters name="context">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The cache of context-specific information."/>
</eAnnotations>
<eGenericType eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EMap">
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
<eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eGenericType>
</eParameters>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_Comment" ordered="false"
lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Comment"/>
</eClassifiers>
</ecore:EPackage>