Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Sphinx/guide"

(XML Persistence Mappings)
(ModelLoadManager extension point documentation)
 
(14 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
===API Reference===
 
===API Reference===
 
===Extension Points Reference===
 
===Extension Points Reference===
 +
====Model Load Manager====
 +
 +
The ''ModelLoadManager'' instance can be accessed through ''org.eclipse.sphinx.emf.workspace.loading.ModelLoadManager#INSTANCE''. No other ''ModelLoadManager'' instance shall be used in the same runtime. The ''ModelLoadManager'' can be extended via an extension point ''org.eclipse.sphinx.emf.workspace.modelLoadManager'' since '''0.12.0''' version. The default ''ModelLoadManager'' implementation is ''org.eclipse.sphinx.emf.workspace.loading.DefaultModelLoadManager''. Any class can be used, which implements the ''org.eclipse.sphinx.emf.workspace.loading.IModelLoadManager'' interface. If a valid registered ''ModelLoadManager'' extension is found, its instance will be used instead of the ''DefaultModelLoadManager''. However, it is recommended to use the ''DefaultModelLoadManager'' as base class. It also provides a possibility, to override load operations of the ModelLoadManager by overriding their create functions to return a custom operation.
 +
 
===Other Reference Information===
 
===Other Reference Information===
 
==== XML Persistence Mappings  ====
 
==== XML Persistence Mappings  ====
  
 
{| width="200" border="1" cellpadding="1" cellspacing="1"
 
{| width="200" border="1" cellpadding="1" cellspacing="1"
|+ XMLPersistenceMapping Extended Meta Data
 
 
|-
 
|-
! colspan="4" | Ecore  
+
! colspan="3" | Ecore  
! colspan="3" | EMF Extended Metadata  
+
! colspan="2" | EMF Extended Metadata  
! colspan="4" | XML Persistence Mapping Extended Metadata  
+
! colspan="5" | XML Persistence Mapping Extended Metadata  
! OMG ReqIF Rule
+
! colspan="2" | XML Persistence Pattern
! Serialization Rule
+
! Applicable without loss of information
! Comment
+
! Comment  
 +
! Used by RMF
 
|-
 
|-
 
| Metaclass  
 
| Metaclass  
 
| containment  
 
| containment  
 
| upperBound  
 
| upperBound  
|
 
 
| kind  
 
| kind  
 
| name  
 
| name  
Line 29: Line 32:
 
| classifierWrapperElement  
 
| classifierWrapperElement  
 
| classifierElement  
 
| classifierElement  
 +
|
 +
|
 
|  
 
|  
 
|  
 
|  
Line 36: Line 41:
 
| n/a  
 
| n/a  
 
| >1  
 
| >1  
|  
+
| attribute
| element
+
 
| <String>  
 
| <String>  
 
| <String>  
 
| <String>  
| false
+
| -
| false
+
| -
| false
+
| -
| false
+
| -
 +
| -
 +
|
 +
| yes
 +
| <br>
 +
|
 +
|-
 +
| EAttribute
 
| n/a  
 
| n/a  
| contained0000Many  
+
| 1
 +
| attribute
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| -
 +
| -
 +
| -
 +
| -
 +
| 5d. ClassAttribute
 +
|
 +
| yes
 +
|
 +
| true
 +
|-
 +
| <strike>EAttribute</strike>
 +
| <strike>n/a</strike>
 +
| <strike>&gt;1</strike>
 +
| <strike>element</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>-</strike>
 +
| <strike>contained0000Many</strike>
 +
| <strike>conditional (not recommended)</strike>
 +
|
 
|  
 
|  
 
|-
 
|-
Line 51: Line 89:
 
| n/a  
 
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 59: Line 96:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| -
 
| contained0001Many  
 
| contained0001Many  
 +
| conditional
 +
| <br>
 
|  
 
|  
 
|-
 
|-
Line 66: Line 105:
 
| n/a  
 
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 74: Line 112:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
 
| contained0010Many  
 
| contained0010Many  
 +
| conditional
 +
| <br>
 
|  
 
|  
 
|-
 
|-
Line 81: Line 121:
 
| n/a  
 
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 89: Line 128:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
 
| contained0011Many  
 
| contained0011Many  
 +
| conditional
 +
| <br>
 
|  
 
|  
 
|-
 
|-
Line 96: Line 137:
 
| n/a  
 
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 104: Line 144:
 
| false  
 
| false  
 
| false  
 
| false  
| n/a
+
| 5a. ClassElementAttribute<br>(specified, but not used for ReqIF)<br>
 
| contained0100Many  
 
| contained0100Many  
| default EMF Serialization Rule
+
| yes
 +
| default EMF serialization. &nbsp;&nbsp;
 +
| true
 
|-
 
|-
| EAttribute
+
| EAttribute  
 
| n/a  
 
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 119: Line 160:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| -
 
| contained0101Many  
 
| contained0101Many  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
+
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 134: Line 176:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
 
| contained0110Many  
 
| contained0110Many  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
+
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 149: Line 192:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
 
| contained0111Many  
 
| contained0111Many  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
| EAttribute
+
| <strike>EAttribute</strike>
| n/a  
+
| <strike>n/a</strike>
| &gt;1  
+
| <strike>&gt;1</strike>
|  
+
| <strike>element</strike>
| element  
+
| <strike>&lt;String&gt;</strike>
| &lt;String&gt;  
+
| <strike>&lt;String&gt;</strike>
| &lt;String&gt;  
+
| <strike>true</strike>
| true  
+
| <strike>false</strike>
| false  
+
| <strike>false</strike>
| false  
+
| <strike>false</strike>
| false  
+
| <strike>-</strike>
| n/a
+
| <strike>contained1000Many</strike>
| contained1000Many  
+
| <strike>conditional (not recommended)</strike>
 +
| <br>
 
|  
 
|  
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
+
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 179: Line 224:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| -
 
| contained1001Many  
 
| contained1001Many  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
| EAttribute
+
| EAttribute  
| n/a
+
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 194: Line 240:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
 
| contained1010Many  
 
| contained1010Many  
 +
| conditional
 +
| no space allowed in content, due to object separation
 
|  
 
|  
 
|-
 
|-
Line 201: Line 249:
 
| n/a  
 
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 209: Line 256:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
 
| contained1011Many  
 
| contained1011Many  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
| EAttribute
+
| EAttribute  
| n/a
+
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 224: Line 272:
 
| false  
 
| false  
 
| false  
 
| false  
| n/a
+
| -
 
| contained1100Many  
 
| contained1100Many  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
| EAttribute
+
| EAttribute  
| n/a
+
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 239: Line 288:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| -
 
| contained1101Many  
 
| contained1101Many  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
| EAttribute
+
| EAttribute  
| n/a
+
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 254: Line 304:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
 
| contained1110Many  
 
| contained1110Many  
 +
| conditional
 +
| no spaces allowed in content due to object separation
 
|  
 
|  
 
|-
 
|-
| EAttribute
+
| EAttribute  
 
| n/a  
 
| n/a  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 269: Line 320:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
 
| contained1111Many  
 
| contained1111Many  
 +
| yes
 +
|
 +
|
 +
|-
 +
| <strike>EAttribute</strike>
 +
| <strike>n/a</strike>
 +
| <strike>1</strike>
 +
| <strike>element</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>-</strike>
 +
| <strike>contained0000Single</strike>
 +
| <strike>conditional (not recommended)</strike>
 +
| <br>
 
|  
 
|  
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
 
| 1
 
|
 
| element
 
| &lt;String&gt;
 
| &lt;String&gt;
 
| false
 
| false
 
| false
 
| false
 
 
| n/a  
 
| n/a  
| contained0000Single
 
|
 
|-
 
| EAttribute
 
| n/a
 
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 299: Line 352:
 
| false  
 
| false  
 
| true  
 
| true  
 +
| -
 +
| contained0001Single
 +
| conditional
 +
| umbiguous attribute mapping
 +
| <br>
 +
|-
 +
| EAttribute
 
| n/a  
 
| n/a  
| contained0001Single
 
|
 
|-
 
| EAttribute
 
| n/a
 
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 314: Line 368:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
| contained0010Single
+
| contained0010Single  
 +
| conditional
 +
| umbiguous attribute mapping
 
|  
 
|  
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
+
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 329: Line 384:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
| contained0011Single
+
| contained0011Single  
 +
| conditional
 +
| umbiguous attribute mapping
 
|  
 
|  
 
|-
 
|-
Line 336: Line 393:
 
| n/a  
 
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 344: Line 400:
 
| false  
 
| false  
 
| false  
 
| false  
| n/a
+
| 5a. ClassElementAttribute
| contained0100Single
+
| contained0100Single  
| default EMF Serialization Rule
+
| yes
 +
| default EMF serialization&nbsp;
 +
| true
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
+
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 359: Line 416:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| -
| contained0101Single
+
| contained0101Single  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
+
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 374: Line 432:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
| contained0110Single
+
| contained0110Single  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
+
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 389: Line 448:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
| contained0111Single
+
| contained0111Single  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
+
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 404: Line 464:
 
| false  
 
| false  
 
| false  
 
| false  
| n/a
+
| -
| contained1000Single
+
| contained1000Single  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
+
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 419: Line 480:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| -
| contained1001Single
+
| contained1001Single  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
+
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 434: Line 496:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
| contained1010Single
+
| contained1010Single  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
| EAttribute
+
| EAttribute  
| n/a
+
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 449: Line 512:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
| contained1011Single
+
| contained1011Single  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
Line 456: Line 521:
 
| n/a  
 
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 464: Line 528:
 
| false  
 
| false  
 
| false  
 
| false  
| n/a
+
| -
| contained1100Single
+
| contained1100Single  
 +
| yes
 +
| <br>
 
|  
 
|  
 
|-
 
|-
Line 471: Line 537:
 
| n/a  
 
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 479: Line 544:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| -
 
| contained1101Single  
 
| contained1101Single  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
Line 486: Line 553:
 
| n/a  
 
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 494: Line 560:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
| contained1110Single
+
| contained1110Single  
 +
| yes
 +
|
 
|  
 
|  
 
|-
 
|-
 
| EAttribute  
 
| EAttribute  
| n/a
+
| n/a  
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 509: Line 576:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
 
| contained1111Single  
 
| contained1111Single  
|
+
| yes
 +
| <br>
 +
|  
 
|-
 
|-
| EReference  
+
| <strike>EReference</strike>
| true  
+
| <strike>true</strike>
| &gt;1  
+
| <strike>&gt;1</strike>
|  
+
| <strike>element</strike>
| element  
+
| <strike>&lt;String&gt;</strike>
| &lt;String&gt;  
+
| <strike>&lt;String&gt;</strike>
| &lt;String&gt;  
+
| <strike>false</strike>
| false  
+
| <strike>false</strike>
| false  
+
| <strike>false</strike>
| false  
+
| <strike>false</strike>
| false  
+
| <strike>-</strike>
| n/a
+
| <strike>contained0000Many</strike>
| contained0000Many  
+
| <strike>conditional (not recommended)</strike>
 +
| <strike>umbiguous type mapping and object separation</strike>
 
|  
 
|  
 
|-
 
|-
Line 531: Line 601:
 
| true  
 
| true  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 539: Line 608:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| -
 
| contained0001Many  
 
| contained0001Many  
 +
| conditional
 
|  
 
|  
 +
| true
 
|-
 
|-
 
| EReference  
 
| EReference  
 
| true  
 
| true  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 554: Line 624:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
 
| contained0010Many  
 
| contained0010Many  
 +
| conditional
 +
|
 
|  
 
|  
 
|-
 
|-
Line 561: Line 633:
 
| true  
 
| true  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 569: Line 640:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
 
| contained0011Many  
 
| contained0011Many  
 +
| conditional
 +
|
 
|  
 
|  
 
|-
 
|-
Line 576: Line 649:
 
| true  
 
| true  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 584: Line 656:
 
| false  
 
| false  
 
| false  
 
| false  
| n/a
+
| -
 
| contained0100Many  
 
| contained0100Many  
| default EMF Serialization Rule
+
| yes
 +
| default EMF serialization, polymorphism via xsi:type
 +
| true
 
|-
 
|-
 
| EReference  
 
| EReference  
 
| true  
 
| true  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 599: Line 672:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| -
 
| contained0101Many  
 
| contained0101Many  
 +
| yes
 +
|
 +
|
 +
|-
 +
| <strike>EReference</strike>
 +
| <strike>true</strike>
 +
| <strike>&gt;1</strike>
 +
| <strike>element</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>false</strike>
 +
| <strike>true</strike>
 +
| <strike>true</strike>
 +
| <strike>false</strike>
 +
| <strike>-</strike>
 +
| <strike>contained0110Many</strike>
 +
| <strike>conditional (not recommended)</strike>
 +
| <strike>loss of attributes, difficult object separation</strike>
 
|  
 
|  
 
|-
 
|-
Line 606: Line 697:
 
| true  
 
| true  
 
| &gt;1  
 
| &gt;1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 612: Line 702:
 
| false  
 
| false  
 
| true  
 
| true  
 +
| true
 +
| true
 +
| -
 +
| contained0111Many
 +
| yes
 +
|
 +
|
 +
|-
 +
| <strike>EReference</strike>
 +
| <strike>true</strike>
 +
| <strike>&gt;1</strike>
 +
| <strike>element</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>true</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>-</strike>
 +
| <strike>contained1000Many</strike>
 +
| <strike>conditional (not recommended)</strike>
 +
| <strike>loss of attributes, difficult object separation</strike>
 +
|
 +
|-
 +
| EReference
 +
| true
 +
| &gt;1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| false
| contained0110Many
+
| true
 +
| 5c. ClassCompositions
 +
| contained1001Many
 +
| yes
 +
|
 +
| true
 +
|-
 +
| <strike>EReference</strike>
 +
| <strike>true</strike>
 +
| <strike>&gt;1</strike>
 +
| <strike>element</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>true</strike>
 +
| <strike>false</strike>
 +
| <strike>true</strike>
 +
| <strike>false</strike>
 +
| <strike>-</strike>
 +
| <strike>contained1010Many</strike>
 +
| <strike>conditional (not recommended)</strike>
 +
| <strike>loss of attrutes, difficult object separation</strike>
 
|  
 
|  
 
|-
 
|-
Line 621: Line 761:
 
| true  
 
| true  
 
| &gt;1  
 
| &gt;1  
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| true
 +
| false
 +
| true
 +
| true
 +
| -
 +
| contained1011Many
 +
| yes
 
|  
 
|  
 +
|
 +
|-
 +
| EReference
 +
| true
 +
| &gt;1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 +
| true
 +
| true
 
| false  
 
| false  
 +
| false
 +
| -
 +
| contained1100Many
 +
| yes
 +
| polymorphism via xsi:type
 +
|
 +
|-
 +
| EReference
 
| true  
 
| true  
 +
| &gt;1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| false
| contained0111Many
+
| true
 +
| -
 +
| contained1101Many
 +
| yes
 +
|
 +
|
 +
|-
 +
| <strike>EReference</strike>
 +
| <strike>true</strike>
 +
| <strike>&gt;1</strike>
 +
| <strike>element</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>true</strike>
 +
| <strike>true</strike>
 +
| <strike>true</strike>
 +
| <strike>false</strike>
 +
| <strike>-</strike>
 +
| <strike>contained1110Many</strike>
 +
| <strike>conditional (not recommended)</strike>
 +
| <strike>loss of attributes, difficult object separation</strike>
 
|  
 
|  
 
|-
 
|-
Line 636: Line 825:
 
| true  
 
| true  
 
| &gt;1  
 
| &gt;1  
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| true
 +
| true
 +
| true
 +
| true
 +
| -
 +
| contained1111Many
 +
| yes
 
|  
 
|  
 +
|
 +
|-
 +
| EReference
 +
| true
 +
| 1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 +
| false
 +
| false
 +
| false
 +
| false
 +
| -
 +
| contained0000Single
 +
| conditional
 +
| loss of attributes, type identification via properties of nested classes
 +
|
 +
|-
 +
| EReference
 
| true  
 
| true  
 +
| 1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 
| false  
 
| false  
 
| false  
 
| false  
 
| false  
 
| false  
| n/a
+
| true
| contained1000Many
+
| -
 +
| contained0001Single
 +
| conditional
 +
| umbiguous reference mapping
 +
| true
 +
|-
 +
| EReference
 +
| true
 +
| 1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| false
 +
| false
 +
| true
 +
| false
 +
| -
 +
| contained0010Single
 +
| conditional
 +
| umbiguous reference mapping
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 
| true  
 
| true  
| &gt;1
+
| 1
 +
| element
 +
| &lt;String&gt;  
 +
| &lt;String&gt;
 +
| false
 +
| false
 +
| true
 +
| true
 +
| -
 +
| contained0011Single
 +
| conditional
 +
| umbiguous reference mapping
 
|  
 
|  
 +
|-
 +
| EReference
 +
| true
 +
| 1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 +
| false
 
| true  
 
| true  
 
| false  
 
| false  
 
| false  
 
| false  
 +
| -
 +
| contained0100Single
 +
| yes
 +
| default EMF serialization, polymorphism via xsi:type&nbsp;
 +
| true
 +
|-
 +
| EReference
 
| true  
 
| true  
| n/a
+
| 1
| contained1001Many
+
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| false
 +
| true
 +
| false
 +
| true
 +
| -
 +
| contained0101Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 
| true  
 
| true  
| &gt;1  
+
| 1  
|
+
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 +
| false
 +
| true
 
| true  
 
| true  
 
| false  
 
| false  
 +
| -
 +
| contained0110Single
 +
| yes
 +
|
 +
|
 +
|-
 +
| EReference
 
| true  
 
| true  
 +
| 1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 
| false  
 
| false  
| n/a
+
| true
| contained1010Many
+
| true
 +
| true
 +
| -
 +
| contained0111Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 
| true  
 
| true  
| &gt;1
+
| 1
 +
| element
 +
| &lt;String&gt;  
 +
| &lt;String&gt;
 +
| true
 +
| false
 +
| false
 +
| false
 +
| -
 +
| contained1000Single
 +
| yes
 
|  
 
|  
 +
polymorphism via xsi:type
 +
 +
|
 +
|-
 +
| EReference
 +
| true
 +
| 1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| true  
 
| true  
 +
| false
 
| false  
 
| false  
 
| true  
 
| true  
 +
| 5c. ClassCompositions
 +
| contained1001Single
 +
| yes
 +
|
 +
| true
 +
|-
 +
| EReference
 
| true  
 
| true  
| n/a
+
| 1
| contained1011Many
+
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| true
 +
| false
 +
| true
 +
| false
 +
| -
 +
| contained1010Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 
| true  
 
| true  
| &gt;1
+
| 1
 +
| element
 +
| &lt;String&gt;  
 +
| &lt;String&gt;
 +
| true
 +
| false
 +
| true
 +
| true
 +
| -
 +
| contained1011Single
 +
| yes
 
|  
 
|  
 +
|
 +
|-
 +
| EReference
 +
| true
 +
| 1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 704: Line 1,042:
 
| false  
 
| false  
 
| false  
 
| false  
| n/a
+
| -
| contained1100Many
+
| contained1100Single
 +
| yes
 +
| polymorphism via xsi:type
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 
| true  
 
| true  
| &gt;1  
+
| 1  
|
+
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 719: Line 1,058:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| -
| contained1101Many
+
| contained1101Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 
| true  
 
| true  
| &gt;1  
+
| 1  
|
+
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 734: Line 1,074:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
| contained1110Many
+
| contained1110Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 
| true  
 
| true  
| &gt;1  
+
| 1  
|
+
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 749: Line 1,090:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
| contained1111Many
+
| contained1111Single
 +
| yes
 +
|
 +
|
 +
|-
 +
| <strike>EReference</strike>
 +
| <strike>false</strike>
 +
| <strike>&gt;1</strike>
 +
| <strike>element</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>-</strike>
 +
| <strike>reference0000Many</strike>
 +
| <strike>conditional (not recommended)</strike>
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 +
| false
 +
| &gt;1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| false
 +
| false
 +
| false
 
| true  
 
| true  
| 1
+
| -
 +
| reference0001Many
 +
| conditional
 +
| umbiguous reference mapping
 
|  
 
|  
 +
|-
 +
| EReference
 +
| false
 +
| &gt;1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 762: Line 1,136:
 
| false  
 
| false  
 
| false  
 
| false  
 +
| true
 
| false  
 
| false  
| false
+
| -
| n/a
+
| reference0010Many
| contained0000Single
+
| conditional
 +
| umbiguous reference mapping, no spaces in reference URI due to object separation
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 +
| false
 +
| &gt;1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| false
 +
| false
 
| true  
 
| true  
| 1
+
| true
 +
| -
 +
| reference0011Many
 +
| conditional
 +
| umbiguous reference mapping
 
|  
 
|  
 +
|-
 +
| EReference
 +
| false
 +
| &gt;1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| false  
 
| false  
 +
| true
 
| false  
 
| false  
 +
| false
 +
| -
 +
| reference0100Many
 +
| yes
 +
| default EMF serialization
 +
| true
 +
|-
 +
| EReference
 +
| false
 +
| &gt;1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| false
| contained0001Single
+
| true
 +
| -<br>
 +
| reference0101Many
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 +
| false
 +
| &gt;1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| false
 
| true  
 
| true  
| 1
+
| true
 +
| false
 +
| -
 +
| reference0110Many
 +
| conditional
 +
| no spaces allowed on reference URI due to object separation
 
|  
 
|  
 +
|-
 +
| EReference
 +
| false
 +
| &gt;1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| false  
 
| false  
 +
| true
 +
| true
 +
| true
 +
| -
 +
| reference0111Many
 +
| yes
 +
|
 +
|
 +
|-
 +
| <strike>EReference</strike>
 +
| <strike>false</strike>
 +
| <strike>&gt;1</strike>
 +
| <strike>element</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>true</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>-</strike>
 +
| <strike>reference1000Many</strike>
 +
| <strike>conditional (not recommended)</strike>
 +
|
 +
|
 +
|-
 +
| EReference
 
| false  
 
| false  
 +
| &gt;1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| false
| contained0010Single
+
| true
 +
| 5b. ClassReferences
 +
| reference1001Many
 +
| yes
 
|  
 
|  
 +
| true
 
|-
 
|-
 
| EReference  
 
| EReference  
 +
| false
 +
| &gt;1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 
| true  
 
| true  
| 1
+
| false
 +
| true
 +
| false
 +
| -
 +
| reference1010Many
 +
| conditional
 +
| no spaces allowed in reference URI due to object separation
 
|  
 
|  
 +
|-
 +
| EReference
 +
| false
 +
| &gt;1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
| false
+
| true
 
| false  
 
| false  
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
| contained0011Single
+
| reference1011Many
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 +
| false
 +
| &gt;1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 
| true  
 
| true  
| 1
+
| true
 +
| false
 +
| false
 +
| -
 +
| reference1100Many
 +
| yes
 
|  
 
|  
 +
|
 +
|-
 +
| EReference
 +
| false
 +
| &gt;1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 +
| true
 +
| true
 
| false  
 
| false  
 
| true  
 
| true  
 +
| -
 +
| reference1101Many
 +
| yes
 +
|
 +
|
 +
|-
 +
| EReference
 
| false  
 
| false  
 +
| &gt;1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| true
 +
| true
 +
| true
 
| false  
 
| false  
| n/a
+
| -
| contained0100Single
+
| reference1110Many
| default EMF Serialization Rule
+
| conditional
 +
| no spaces allowed in reference URI due to object separation
 +
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 +
| false
 +
| &gt;1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 
| true  
 
| true  
 +
| true
 +
| true
 +
| true
 +
| -
 +
| reference1111Many
 +
| yes
 +
|
 +
|
 +
|-
 +
| <strike>EReference</strike>
 +
| <strike>false</strike>
 +
| <strike>1</strike>
 +
| <strike>element</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>&lt;String&gt;</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>false</strike>
 +
| <strike>-</strike>
 +
| <strike>reference0000Single</strike>
 +
| <strike>conditional (not recommended)</strike>
 +
|
 +
|
 +
|-
 +
| EReference
 +
| false
 
| 1  
 
| 1  
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| false
 +
| false
 +
| false
 +
| true
 +
| -
 +
| reference0001Single
 +
| conditional
 +
| umbiguous reference mapping
 
|  
 
|  
 +
|-
 +
| EReference
 +
| false
 +
| 1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
 +
| false
 
| false  
 
| false  
 
| true  
 
| true  
 +
| false
 +
| -
 +
| reference0010Single
 +
| conditional
 +
| umbiguous reference mapping
 +
|
 +
|-
 +
| EReference
 +
| false
 +
| 1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| false
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| true
| contained0101Single
+
| -
 +
| reference0011Single
 +
| conditional
 +
| umbiguous reference mapping
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
 +
| false
 +
| 1
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| false
 
| true  
 
| true  
 +
| false
 +
| false
 +
| -
 +
| reference0100Single
 +
| yes
 +
| default EMF serialization&nbsp;
 +
| true
 +
|-
 +
| EReference
 +
| false
 
| 1  
 
| 1  
 +
| element
 +
| &lt;String&gt;
 +
| &lt;String&gt;
 +
| false
 +
| true
 +
| false
 +
| true
 +
| <br>
 +
| reference0101Single
 +
| yes
 
|  
 
|  
 +
| <br>
 +
|-
 +
| EReference
 +
| false
 +
| 1
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 854: Line 1,458:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
| contained0110Single
+
| reference0110Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
| true
+
| false
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 869: Line 1,474:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
| contained0111Single
+
| reference0111Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
| true
+
| false
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 884: Line 1,490:
 
| false  
 
| false  
 
| false  
 
| false  
| n/a
+
| -
| contained1000Single
+
| reference1000Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
| true
+
| false
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 899: Line 1,506:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| 5b. ClassReferences
| contained1001Single
+
| reference1001Single
 +
| yes
 
|  
 
|  
 +
| true
 
|-
 
|-
 
| EReference  
 
| EReference  
| true
+
| false
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 914: Line 1,522:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
| contained1010Single
+
| reference1010Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
| true
+
| false
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 929: Line 1,538:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
| contained1011Single
+
| reference1011Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
| true
+
| false
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 944: Line 1,554:
 
| false  
 
| false  
 
| false  
 
| false  
| n/a
+
| -
| contained1100Single
+
| reference1100Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
| true
+
| false
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 959: Line 1,570:
 
| false  
 
| false  
 
| true  
 
| true  
| n/a
+
| -
| contained1101Single
+
| reference1101Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
| true
+
| false
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 974: Line 1,586:
 
| true  
 
| true  
 
| false  
 
| false  
| n/a
+
| -
| contained1110Single
+
| reference1110Single
 +
| yes
 +
|  
 
|  
 
|  
 
|-
 
|-
 
| EReference  
 
| EReference  
| true
+
| false
 
| 1  
 
| 1  
|
 
 
| element  
 
| element  
 
| &lt;String&gt;  
 
| &lt;String&gt;  
Line 989: Line 1,602:
 
| true  
 
| true  
 
| true  
 
| true  
| n/a
+
| -
| contained1111Single
+
| reference1111Single
|
+
| yes
 +
|  
 +
|  
 
|}
 
|}
  

Latest revision as of 12:36, 21 July 2021

Programmer's Guide

Reference

API Reference

Extension Points Reference

Model Load Manager

The ModelLoadManager instance can be accessed through org.eclipse.sphinx.emf.workspace.loading.ModelLoadManager#INSTANCE. No other ModelLoadManager instance shall be used in the same runtime. The ModelLoadManager can be extended via an extension point org.eclipse.sphinx.emf.workspace.modelLoadManager since 0.12.0 version. The default ModelLoadManager implementation is org.eclipse.sphinx.emf.workspace.loading.DefaultModelLoadManager. Any class can be used, which implements the org.eclipse.sphinx.emf.workspace.loading.IModelLoadManager interface. If a valid registered ModelLoadManager extension is found, its instance will be used instead of the DefaultModelLoadManager. However, it is recommended to use the DefaultModelLoadManager as base class. It also provides a possibility, to override load operations of the ModelLoadManager by overriding their create functions to return a custom operation.

Other Reference Information

XML Persistence Mappings

Ecore EMF Extended Metadata XML Persistence Mapping Extended Metadata XML Persistence Pattern Applicable without loss of information Comment Used by RMF
Metaclass containment upperBound kind name wrapperName featureWrapperElement featureElement classifierWrapperElement classifierElement
EAttribute n/a >1 attribute <String> <String> - - - - - yes
EAttribute n/a 1 attribute <String> <String> - - - - 5d. ClassAttribute yes true
EAttribute n/a >1 element <String> <String> false false false false - contained0000Many conditional (not recommended)
EAttribute n/a >1 element <String> <String> false false false true - contained0001Many conditional
EAttribute n/a >1 element <String> <String> false false true false - contained0010Many conditional
EAttribute n/a >1 element <String> <String> false false true true - contained0011Many conditional
EAttribute n/a >1 element <String> <String> false true false false 5a. ClassElementAttribute
(specified, but not used for ReqIF)
contained0100Many yes default EMF serialization.    true
EAttribute n/a >1 element <String> <String> false true false true - contained0101Many yes
EAttribute n/a >1 element <String> <String> false true true false - contained0110Many yes
EAttribute n/a >1 element <String> <String> false true true true - contained0111Many yes
EAttribute n/a >1 element <String> <String> true false false false - contained1000Many conditional (not recommended)
EAttribute n/a >1 element <String> <String> true false false true - contained1001Many yes
EAttribute n/a >1 element <String> <String> true false true false - contained1010Many conditional no space allowed in content, due to object separation
EAttribute n/a >1 element <String> <String> true false true true - contained1011Many yes
EAttribute n/a >1 element <String> <String> true true false false - contained1100Many yes
EAttribute n/a >1 element <String> <String> true true false true - contained1101Many yes
EAttribute n/a >1 element <String> <String> true true true false - contained1110Many conditional no spaces allowed in content due to object separation
EAttribute n/a >1 element <String> <String> true true true true - contained1111Many yes
EAttribute n/a 1 element <String> <String> false false false false - contained0000Single conditional (not recommended)
EAttribute n/a 1 element <String> <String> false false false true - contained0001Single conditional umbiguous attribute mapping
EAttribute n/a 1 element <String> <String> false false true false - contained0010Single conditional umbiguous attribute mapping
EAttribute n/a 1 element <String> <String> false false true true - contained0011Single conditional umbiguous attribute mapping
EAttribute n/a 1 element <String> <String> false true false false 5a. ClassElementAttribute contained0100Single yes default EMF serialization  true
EAttribute n/a 1 element <String> <String> false true false true - contained0101Single yes
EAttribute n/a 1 element <String> <String> false true true false - contained0110Single yes
EAttribute n/a 1 element <String> <String> false true true true - contained0111Single yes
EAttribute n/a 1 element <String> <String> true false false false - contained1000Single yes
EAttribute n/a 1 element <String> <String> true false false true - contained1001Single yes
EAttribute n/a 1 element <String> <String> true false true false - contained1010Single yes
EAttribute n/a 1 element <String> <String> true false true true - contained1011Single yes
EAttribute n/a 1 element <String> <String> true true false false - contained1100Single yes
EAttribute n/a 1 element <String> <String> true true false true - contained1101Single yes
EAttribute n/a 1 element <String> <String> true true true false - contained1110Single yes
EAttribute n/a 1 element <String> <String> true true true true - contained1111Single yes
EReference true >1 element <String> <String> false false false false - contained0000Many conditional (not recommended) umbiguous type mapping and object separation
EReference true >1 element <String> <String> false false false true - contained0001Many conditional true
EReference true >1 element <String> <String> false false true false - contained0010Many conditional
EReference true >1 element <String> <String> false false true true - contained0011Many conditional
EReference true >1 element <String> <String> false true false false - contained0100Many yes default EMF serialization, polymorphism via xsi:type true
EReference true >1 element <String> <String> false true false true - contained0101Many yes
EReference true >1 element <String> <String> false true true false - contained0110Many conditional (not recommended) loss of attributes, difficult object separation
EReference true >1 element <String> <String> false true true true - contained0111Many yes
EReference true >1 element <String> <String> true false false false - contained1000Many conditional (not recommended) loss of attributes, difficult object separation
EReference true >1 element <String> <String> true false false true 5c. ClassCompositions contained1001Many yes true
EReference true >1 element <String> <String> true false true false - contained1010Many conditional (not recommended) loss of attrutes, difficult object separation
EReference true >1 element <String> <String> true false true true - contained1011Many yes
EReference true >1 element <String> <String> true true false false - contained1100Many yes polymorphism via xsi:type
EReference true >1 element <String> <String> true true false true - contained1101Many yes
EReference true >1 element <String> <String> true true true false - contained1110Many conditional (not recommended) loss of attributes, difficult object separation
EReference true >1 element <String> <String> true true true true - contained1111Many yes
EReference true 1 element <String> <String> false false false false - contained0000Single conditional loss of attributes, type identification via properties of nested classes
EReference true 1 element <String> <String> false false false true - contained0001Single conditional umbiguous reference mapping true
EReference true 1 element <String> <String> false false true false - contained0010Single conditional umbiguous reference mapping
EReference true 1 element <String> <String> false false true true - contained0011Single conditional umbiguous reference mapping
EReference true 1 element <String> <String> false true false false - contained0100Single yes default EMF serialization, polymorphism via xsi:type  true
EReference true 1 element <String> <String> false true false true - contained0101Single yes
EReference true 1 element <String> <String> false true true false - contained0110Single yes
EReference true 1 element <String> <String> false true true true - contained0111Single yes
EReference true 1 element <String> <String> true false false false - contained1000Single yes

polymorphism via xsi:type

EReference true 1 element <String> <String> true false false true 5c. ClassCompositions contained1001Single yes true
EReference true 1 element <String> <String> true false true false - contained1010Single yes
EReference true 1 element <String> <String> true false true true - contained1011Single yes
EReference true 1 element <String> <String> true true false false - contained1100Single yes polymorphism via xsi:type
EReference true 1 element <String> <String> true true false true - contained1101Single yes
EReference true 1 element <String> <String> true true true false - contained1110Single yes
EReference true 1 element <String> <String> true true true true - contained1111Single yes
EReference false >1 element <String> <String> false false false false - reference0000Many conditional (not recommended)
EReference false >1 element <String> <String> false false false true - reference0001Many conditional umbiguous reference mapping
EReference false >1 element <String> <String> false false true false - reference0010Many conditional umbiguous reference mapping, no spaces in reference URI due to object separation
EReference false >1 element <String> <String> false false true true - reference0011Many conditional umbiguous reference mapping
EReference false >1 element <String> <String> false true false false - reference0100Many yes default EMF serialization true
EReference false >1 element <String> <String> false true false true -
reference0101Many yes
EReference false >1 element <String> <String> false true true false - reference0110Many conditional no spaces allowed on reference URI due to object separation
EReference false >1 element <String> <String> false true true true - reference0111Many yes
EReference false >1 element <String> <String> true false false false - reference1000Many conditional (not recommended)
EReference false >1 element <String> <String> true false false true 5b. ClassReferences reference1001Many yes true
EReference false >1 element <String> <String> true false true false - reference1010Many conditional no spaces allowed in reference URI due to object separation
EReference false >1 element <String> <String> true false true true - reference1011Many yes
EReference false >1 element <String> <String> true true false false - reference1100Many yes
EReference false >1 element <String> <String> true true false true - reference1101Many yes
EReference false >1 element <String> <String> true true true false - reference1110Many conditional no spaces allowed in reference URI due to object separation
EReference false >1 element <String> <String> true true true true - reference1111Many yes
EReference false 1 element <String> <String> false false false false - reference0000Single conditional (not recommended)
EReference false 1 element <String> <String> false false false true - reference0001Single conditional umbiguous reference mapping
EReference false 1 element <String> <String> false false true false - reference0010Single conditional umbiguous reference mapping
EReference false 1 element <String> <String> false false true true - reference0011Single conditional umbiguous reference mapping
EReference false 1 element <String> <String> false true false false - reference0100Single yes default EMF serialization  true
EReference false 1 element <String> <String> false true false true
reference0101Single yes
EReference false 1 element <String> <String> false true true false - reference0110Single yes
EReference false 1 element <String> <String> false true true true - reference0111Single yes
EReference false 1 element <String> <String> true false false false - reference1000Single yes
EReference false 1 element <String> <String> true false false true 5b. ClassReferences reference1001Single yes true
EReference false 1 element <String> <String> true false true false - reference1010Single yes
EReference false 1 element <String> <String> true false true true - reference1011Single yes
EReference false 1 element <String> <String> true true false false - reference1100Single yes
EReference false 1 element <String> <String> true true false true - reference1101Single yes
EReference false 1 element <String> <String> true true true false - reference1110Single yes
EReference false 1 element <String> <String> true true true true - reference1111Single yes

References:

Back to the top