Mapping Major Rework
This milestone covers entirely re-writing a new data mapping approach which is much simpler, and yet lets every element in every loaded document be easily mapped by several qualified naming schemes. These are below. Maintaining several qualified-name mapping schemes has been found necessary to support multiple UML editing tools (MD, Sparks EA, Papyrus), w…
This milestone covers entirely re-writing a new data mapping approach which is much simpler, and yet lets every element in every loaded document be easily mapped by several qualified naming schemes. These are below. Maintaining several qualified-name mapping schemes has been found necessary to support multiple UML editing tools (MD, Sparks EA, Papyrus), where each deals with certain external references quite differently in general, and particularly when profiles and profile-annotated documents are loaded.
artifact-urn#element-name
artifact-urn#element-xmi-id
artifact-namespace-uri#element-name
artifact-namespace-uri#element-xmi-id
qualified-package-name#element-name
qualified-package-name#element-xmi-id
....
TBD based on further research
...
Note: even though xmi-id values are GUID or UUID's they should not be mapped "globally" across multiple documents, as MD for instance has the habit of using the same exact UUID for the root Model element, and even so when parts or all of a document are copied, this leads to duplicate UUID's.
Note: below is an example of MagicDraw using a file name only known to the document within MD specific extensions and yet using the name in non-MD XML within an href. See href='Test_Profile.mdxml#test-profile-datatypes-DateTime'. This snippet is from a document which is annotated with the 'Test_Profile'
<packagedElement xmi:type='uml:Class' xmi:id='_17_0_2_1707042cx_1339246750460_952849_1746_9934' name='Concurrent' visibility='public' isAbstract='true'>
<ownedAttribute xmi:type='uml:Property' xmi:id='_17_0_2_1707042cx_1339246916083_927037_1761' name='createdOn' visibility='private'>
<type xmi:type='uml:DataType' href='Test_Profile.mdxml#test-profile-datatypes-DateTime'>
<xmi:Extension extender='MagicDraw UML 17.0'>
<referenceExtension referentPath='Test Profile::datatypes::DateTime' referentType='DataType'/>
</xmi:Extension>
</type>