blob: 692792bb21b06de663f7671f4700fe46ded03f71 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/5" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/5 pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA">
<uml:Profile xmi:id="_Data-ReferenceModelProfile" name="ReferenceModelProfile" URI="http://www.omg.org/spec/AML/20150501/ReferenceModelProfile.xmi" metamodelReference="_Data-ReferenceModelProfile-packageImport">
<ownedComment xmi:id="_Data-ReferenceModelProfile-ownedComment">
<body>&lt;html>
&lt;head>
&lt;style>
p {padding:0px; margin:0px;}
&lt;/style>
&lt;/head>
&lt;body>
&lt;p>
&amp;#160;The Reference Model Profile (RMP) enables the specification of reference models, upon which archetypes can be based. &amp;#160;The RMP enables the identification of a root package that identifies the set of reference model elements (REM) that can be constrained by a collection of archetype model elements (AME) in an Archetype Library.
&lt;/p>
&lt;p>
&amp;#160;
&lt;/p>
&lt;p>
The RMP provides the ability to associate the &amp;quot;primitive data types&amp;quot; identified in an instance of a Constraint Model Profile with the corresponding (mapped) data types in the reference model. &amp;#160;It also allows properties in the target reference model to be identified as &amp;quot;unconstrainable&amp;quot;, because they carry &amp;quot;runtime&amp;quot; provenance and workflow information or because they carry &amp;quot;infrastructure&amp;quot; items such as archetype identifiers, etc.
&lt;/p>
&lt;/body>
&lt;/html></body>
</ownedComment>
<elementImport xmi:id="_Data-ReferenceModelProfile-elementImport">
<importedElement xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/XMLPrimitiveTypes.library.uml#_0"/>
</elementImport>
<packageImport xmi:id="_Data-ReferenceModelProfile-packageImport">
<importedPackage xmi:type="uml:Model" href="pathmap://UML_METAMODELS/UML.metamodel.uml#_0"/>
</packageImport>
<packagedElement xmi:type="uml:Stereotype" xmi:id="_Data-ReferenceModelProfile-Infrastructure" name="Infrastructure">
<ownedComment xmi:id="_Data-ReferenceModelProfile-Infrastructure-ownedComment">
<body>&lt;html>
&lt;head>
&lt;style>
p {padding:0px; margin:0px;}
&lt;/style>
&lt;/head>
&lt;body>
&lt;p>
&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>An &lt;/span>&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>«Infrastructure» &lt;/span>&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>Property models an Archetype implementation aspect such as a specific Archetype identifier. &amp;#160;Properties with an applied Infrastructure Stereotype cannot be constrained in&amp;#160;AML.&lt;/span>
&lt;/p>
&lt;/body>
&lt;/html></body>
</ownedComment>
<ownedAttribute xmi:id="_Data-ReferenceModelProfile-Infrastructure-base_Property" name="base_Property" visibility="private" association="_Data-ReferenceModelProfile-packagedElement-2">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Extension" xmi:id="_Data-ReferenceModelProfile-packagedElement-2" memberEnd="_Data-ReferenceModelProfile-Infrastructure-base_Property _Data-ReferenceModelProfile-packagedElement-2-extension_" navigableOwnedEnd="_Data-ReferenceModelProfile-packagedElement-2-extension_">
<ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_Data-ReferenceModelProfile-packagedElement-2-extension_" name="extension_" visibility="private" type="_Data-ReferenceModelProfile-Infrastructure" aggregation="composite" association="_Data-ReferenceModelProfile-packagedElement-2">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Data-ReferenceModelProfile-packagedElement-2-extension_-lowerValue"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Stereotype" xmi:id="_Data-ReferenceModelProfile-Runtime" name="Runtime">
<ownedComment xmi:id="_Data-ReferenceModelProfile-Runtime-ownedComment">
<body>&lt;html>
&lt;head>
&lt;style>
p {padding:0px; margin:0px;}
&lt;/style>
&lt;/head>
&lt;body>
&lt;p>
&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>A &lt;/span>&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>«Runtime» &lt;/span>&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>Property models&lt;/span> a dynamic or &amp;quot;runtime&amp;quot; element such as a time stamp. &amp;#160;A Property with an applied Runtime Stereotype cannot be constrained using AML.
&lt;/p>
&lt;p>
&amp;#160;
&lt;/p>
&lt;/body>
&lt;/html></body>
</ownedComment>
<ownedAttribute xmi:id="_Data-ReferenceModelProfile-Runtime-base_Property" name="base_Property" visibility="private" association="_Data-ReferenceModelProfile-packagedElement-4">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Extension" xmi:id="_Data-ReferenceModelProfile-packagedElement-4" memberEnd="_Data-ReferenceModelProfile-Runtime-base_Property _Data-ReferenceModelProfile-packagedElement-4-extension_" navigableOwnedEnd="_Data-ReferenceModelProfile-packagedElement-4-extension_">
<ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_Data-ReferenceModelProfile-packagedElement-4-extension_" name="extension_" visibility="private" type="_Data-ReferenceModelProfile-Runtime" aggregation="composite" association="_Data-ReferenceModelProfile-packagedElement-4">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Data-ReferenceModelProfile-packagedElement-4-extension_-lowerValue"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Stereotype" xmi:id="_Data-ReferenceModelProfile-ReferenceModel" name="ReferenceModel">
<ownedComment xmi:id="_Data-ReferenceModelProfile-ReferenceModel-ownedComment">
<body>&lt;html>
&lt;head>
&lt;style>
p {padding:0px; margin:0px;}
&lt;/style>
&lt;/head>
&lt;body>
&lt;p>
&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>A &lt;/span>&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>«ReferenceModel» Package &lt;/span>&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>defines the complex data types and structural patterns that can be constrained by a collection of Archetypes. &amp;#160;&amp;#160;A &lt;/span>&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>«ReferenceModel» Stereotype includes tag definitions for the&lt;/span>&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;> publisher, namespace and version of a Reference Model in a form compatible with a modeling language such as [ADL].&lt;/span>
&lt;/p>
&lt;p>
&amp;#160;
&lt;/p>
&lt;p>
&amp;#160;
&lt;/p>
&lt;/body>
&lt;/html></body>
</ownedComment>
<ownedRule xmi:id="_Data-ReferenceModelProfile-ReferenceModel-[AOM]_ARCHETYPE_HRID_Invariant_Rm_publisher_validity" name="[AOM] ARCHETYPE_HRID:Invariant:Rm_publisher_validity">
<ownedComment xmi:id="_Data-ReferenceModelProfile-ReferenceModel-[AOM]_ARCHETYPE_HRID_Invariant_Rm_publisher_validity-ownedComment">
<body>&lt;html>
&lt;head>
&lt;style>
p {padding:0px; margin:0px;}
&lt;/style>
&lt;/head>
&lt;body>
&lt;p align=&quot;left&quot; style=&quot;margin-top:0px;margin-left:0.0px;margin-bottom:0px;&quot;>
&lt;span style=&quot;font-weight:normal; color:#000000; font-family:TimesNewRomanPSMT; font-size:10pt;&quot;>The [AOM] ARCHETYPE_HRID/rm_publisher must have a value. &amp;#160;This [AOM] Invariant maps to the AML Constraint that the &lt;/span>&lt;span style=&quot;font-family:Times New Roman,serif; font-size:10pt;&quot;>«ReferenceModel» &amp;#160;rmPublisher is required.&lt;/span>
&lt;/p>
&lt;/body>
&lt;/html></body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_Data-ReferenceModelProfile-ReferenceModel-[AOM]_ARCHETYPE_HRID_Invariant_Rm_publisher_validity-specification">
<language>English</language>
<body>The requirement that there is a specified rmPublisher is enforced by the UML Semantic for the required tag rmPublisher.</body>
</specification>
</ownedRule>
<ownedAttribute xmi:id="_Data-ReferenceModelProfile-ReferenceModel-base_Package" name="base_Package" visibility="private" association="_Data-ReferenceModelProfile-packagedElement-6">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Package"/>
</ownedAttribute>
<ownedAttribute xmi:id="_Data-ReferenceModelProfile-ReferenceModel-rmPublisher" name="rmPublisher" visibility="public">
<ownedComment xmi:id="_Data-ReferenceModelProfile-ReferenceModel-rmPublisher-ownedComment">
<body>&lt;html>
&lt;head>
&lt;style>
p {padding:0px; margin:0px;}
&lt;/style>
&lt;/head>
&lt;body>
&lt;p>
&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>The value of this tag is the name of the Reference Model publisher. &amp;#160;This tag definition maps to the [AOM] ARCHETYPE_HRID/rm_publisher&lt;/span>&lt;span style=&quot;font-family:Times New Roman; font-size:10pt;&quot;>&lt;i> &lt;/i>&lt;/span>&lt;span style=&quot;font-family:Times New Roman; font-size:10pt;&quot;>attribute&lt;/span>&lt;span style=&quot;font-family:Times New Roman; font-size:10pt;&quot;>.&lt;/span>
&lt;/p>
&lt;/body>
&lt;/html></body>
</ownedComment>
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
</ownedAttribute>
<ownedAttribute xmi:id="_Data-ReferenceModelProfile-ReferenceModel-rmNamespace" name="rmNamespace" visibility="public">
<ownedComment xmi:id="_Data-ReferenceModelProfile-ReferenceModel-rmNamespace-ownedComment">
<body>&lt;html>
&lt;head>
&lt;style>
p {padding:0px; margin:0px;}
&lt;/style>
&lt;/head>
&lt;body>
&lt;p>
&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>The value of this tag is the&lt;/span> reverse domain name of the namespace (for example, uk.gov.nhs). &amp;#160;This tag definition maps to the [AOM] ARCHETYPE_HRID/namespace attribute.
&lt;/p>
&lt;p>
&amp;#160;
&lt;/p>
&lt;/body>
&lt;/html></body>
</ownedComment>
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Data-ReferenceModelProfile-ReferenceModel-rmNamespace-lowerValue"/>
</ownedAttribute>
<ownedAttribute xmi:id="_Data-ReferenceModelProfile-ReferenceModel-rmVersion" name="rmVersion" visibility="public">
<ownedComment xmi:id="_Data-ReferenceModelProfile-ReferenceModel-rmVersion-ownedComment">
<body>&lt;html>
&lt;head>
&lt;style>
p {padding:0px; margin:0px;}
&lt;/style>
&lt;/head>
&lt;body>
&lt;p>
&lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>The value of this tag is the version id of the reference model on which the archetype is based. The tag maps to the [AOM] ARCHETYPE/rm_release attribute.&lt;/span>
&lt;/p>
&lt;/body>
&lt;/html></body>
</ownedComment>
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Data-ReferenceModelProfile-ReferenceModel-rmVersion-lowerValue"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Extension" xmi:id="_Data-ReferenceModelProfile-packagedElement-6" memberEnd="_Data-ReferenceModelProfile-ReferenceModel-base_Package _Data-ReferenceModelProfile-packagedElement-6-extension_" navigableOwnedEnd="_Data-ReferenceModelProfile-packagedElement-6-extension_">
<ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_Data-ReferenceModelProfile-packagedElement-6-extension_" name="extension_" visibility="private" type="_Data-ReferenceModelProfile-ReferenceModel" aggregation="composite" association="_Data-ReferenceModelProfile-packagedElement-6">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Data-ReferenceModelProfile-packagedElement-6-extension_-lowerValue"/>
</ownedEnd>
</packagedElement>
<packagedElement xmi:type="uml:Stereotype" xmi:id="_Data-ReferenceModelProfile-MappedDataType" name="MappedDataType">
<ownedComment xmi:id="_Data-ReferenceModelProfile-MappedDataType-ownedComment">
<body>&lt;html>
&lt;head>
&lt;style>
p {padding:0px; margin:0px;}
&lt;/style>
&lt;/head>
&lt;body>
&lt;p>
A &lt;span style=&quot;font-size:10pt; font-family:Times New Roman;&quot;>«MappedDataType» Abstraction specifies the AML Primitive Type abstraction for a Reference Model Classifier&lt;/span>. &amp;#160;&amp;#160;AML Primitive types are defined by the UML Type Library and/or the XML Primitive Type Library. &amp;#160;The client of the Abstraction is a Reference Model Classifier. &amp;#160;The supplier of the Abstraction is an AML Primitive type. &amp;#160;The mapping of the Abstraction defines the transformations between the Reference Model Classifier and its AML Primitive Type counterpart. &amp;#160;Note that AML primitive Archetype Constraints are defined with respect to AML Primitive Types even when the Type being constrained is a Reference Model Type.
&lt;/p>
&lt;p>
&amp;#160;
&lt;/p>
&lt;/body>
&lt;/html></body>
</ownedComment>
<ownedRule xmi:id="_Data-ReferenceModelProfile-MappedDataType-isAMLDataType" name="isAMLDataType">
<ownedComment xmi:id="_Data-ReferenceModelProfile-MappedDataType-isAMLDataType-ownedComment">
<body>&lt;html>
&lt;head>
&lt;style>
p {padding:0px; margin:0px;}
&lt;/style>
&lt;/head>
&lt;body>
&lt;p>
&lt;span style=&quot;font-family:Times New Roman; font-size:10pt;&quot;>The supplier AML Primitive Type must be an AML Primitive Type defined in the UML Primitive Type or XML Primitive Type libraries.&lt;/span>
&lt;/p>
&lt;/body>
&lt;/html></body>
</ownedComment>
<specification xmi:type="uml:OpaqueExpression" xmi:id="_Data-ReferenceModelProfile-MappedDataType-isAMLDataType-specification">
<language>OCL</language>
<body>self.base_Abstraction.supplier->exists(s|s.oclIsKindOf(PrimitiveType) and ((s.namespace.name='XMLPrimitiveTypes') or (s.namespace.name='PrimitiveTypes')))</body>
</specification>
</ownedRule>
<ownedAttribute xmi:id="_Data-ReferenceModelProfile-MappedDataType-base_Abstraction" name="base_Abstraction" visibility="private" association="_Data-ReferenceModelProfile-packagedElement-8">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Abstraction"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Extension" xmi:id="_Data-ReferenceModelProfile-packagedElement-8" memberEnd="_Data-ReferenceModelProfile-MappedDataType-base_Abstraction _Data-ReferenceModelProfile-packagedElement-8-extension_MappedDataType" navigableOwnedEnd="_Data-ReferenceModelProfile-packagedElement-8-extension_MappedDataType">
<ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_Data-ReferenceModelProfile-packagedElement-8-extension_MappedDataType" name="extension_MappedDataType" visibility="private" type="_Data-ReferenceModelProfile-MappedDataType" aggregation="composite" association="_Data-ReferenceModelProfile-packagedElement-8">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Data-ReferenceModelProfile-packagedElement-8-extension_MappedDataType-lowerValue"/>
</ownedEnd>
</packagedElement>
<profileApplication xmi:id="_sMZ7QJMHEeWTr5CKcL0jtg">
<eAnnotations xmi:id="_sMZ7QZMHEeWTr5CKcL0jtg" source="http://www.eclipse.org/uml2/2.0.0/UML">
<references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA"/>
</eAnnotations>
<appliedProfile href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
</profileApplication>
</uml:Profile>
<Ecore:EPackage xmi:id="_tZ8FYJMHEeWTr5CKcL0jtg" base_Package="_Data-ReferenceModelProfile" packageName="refmodel" nsPrefix="refmodel" nsURI="http://www.omg.org/spec/AML/20150501/ReferenceModelProfile.xmi" basePackage="org.eclipse.mdht.uml.aml" prefix="RefModel"/>
</xmi:XMI>