GMF MapModel is a model combining GMF GraphModel, GMF ToolModel and domain Ecore model all together and finally describing diagram editor. Composed instance of this model should be transformed into [[GMF GenModel]] prior to diagram code generation.

GMF MapModel is a model combining GMF GraphModel, GMF ToolModel and domain Ecore model all together and finally describing diagram editor. Composed instance of this model should be transformed into [[GMF GenModel]] prior to diagram code generation.

+

+

==Links==

+

There are two types of link mappings:

+

*Type based links

+

*Reference based links

+

The first type is used when particular EClass is specified and creation of such link in runtime means creation of this EClass instance. When EClass is not specified then this is the second type of link mapping; creation of such link in runtime means setting the specified reference value.

+

+

===Type Based Links===

+

Mapping property 'domainMetaElement' specifies EClass (type) of the link. If 'sourceMetaFeature' property is not specified then 'containmentFeature' is used to denote link source (iow link container is it's source). If 'sourceMetaFeature' is specified then it should be a EReference defined within link EClass and it's value is the link source. Property 'linkMetaFeature' must always be specified and it references link target.

+

+

===Reference Based Links===

+

Properties 'domainMetaElement' and 'sourceMetaFeature' should not be specified. Property 'linkMetaFeature' is an EReference; EClass that contains it is a link source and EReference type is a link target.

Revision as of 07:11, 10 July 2006

GMF MapModel is a model combining GMF GraphModel, GMF ToolModel and domain Ecore model all together and finally describing diagram editor. Composed instance of this model should be transformed into GMF GenModel prior to diagram code generation.

Links

There are two types of link mappings:

Type based links

Reference based links

The first type is used when particular EClass is specified and creation of such link in runtime means creation of this EClass instance. When EClass is not specified then this is the second type of link mapping; creation of such link in runtime means setting the specified reference value.

Type Based Links

Mapping property 'domainMetaElement' specifies EClass (type) of the link. If 'sourceMetaFeature' property is not specified then 'containmentFeature' is used to denote link source (iow link container is it's source). If 'sourceMetaFeature' is specified then it should be a EReference defined within link EClass and it's value is the link source. Property 'linkMetaFeature' must always be specified and it references link target.

Reference Based Links

Properties 'domainMetaElement' and 'sourceMetaFeature' should not be specified. Property 'linkMetaFeature' is an EReference; EClass that contains it is a link source and EReference type is a link target.