Skip to content

Mapping Configuration

General

The Mapping Configuration is used to define which attributes from Jama Connect items are mapped to attributes from Enterprise Architect elements (and also vice versa).

A standard mapping for importing and exporting is provided with the LemonTree.Connect for Jama Connect version and can be found in
C:\ProgramData\LieberLieber\LemonTree.Connect.Jama\mapping

Tip

Relations in the mapping configuration are case sensitive, so be sure to use the correct Jama Connect Keys as described. The link names have to match the exact casing from the admin page of the relationships.

Import

If you start an import for the first time, the default mapping file is already chosen. You can use a different one. Or if you have changed the path, reset it to the default mapping. Default Mapping

Here is an explanation of the different section in the import mapping user interface:

UI Section Description
Import Target The package in the EA model, where the requirements will be imported to
Import Source The set, which should be located in a component of a project, from where the requirements will be imported in Jama Connect
Mapping The mapping file which is used for the import. A default mapping is used or can be changed if needed

Type Mapping

Mandatory Mapping

It is necessary to map SET to Package, otherwise the import will not work!

The default mapping for an import includes following items:

Jama Connect Item Jama Connect Key EA Type EA Stereotype
set SET Package Package
folder FLD Package Package
stakeholder requirement SHRQ Class EA Specifics 1.0::requirement
system requirement SYSRQ Class EA Specifics 1.0::requirement
text TXT Artifact Artifact
Derived from Derived from Dependency Dependency

Original Key Mapping

Only the ORIGINAL set key is used. For example if you change the key of your set from SYSRQ to SYSREQ you would still have to map SYSRQ. The types original key can always be found in the administration under "Item types"

Attribute Mapping

The default mapping for importing form Jama Connect (external) to EA contains following attributes:

Jama Connect Property EA Property
id ::id
key ::Key
uri ::Uri
type ::Type
name Name
description Documentation

A complete mapping rule can be seen in the following picture. Mapping Rule for *Component*

Export

If you start an export for the first time, the default mapping file is already chosen. You can use a different one. Or if you have changed the path, reset it to the default mapping. Default Mapping

Closing Diagrams

Before you start the export all diagrams need to be saved and closed. Otherwise the export cannot start!

Here is an explanation of the different section in the export mapping user interface:

UI Section Description
Export Source The package in the EA model, which contains the architecture and will be exported
Export Target The project in Jama Connect in which the architecture elements and the links will be exported.
Mapping The mapping file which is used for the export. A default mapping is used or can be changed if needed.

Default Type Mapping

Mandatory Mapping

It is necessary to map SET to Package, otherwise the export will not work!

The default mapping for an export includes following items:

Jama Connect Item Jama Connect Key EA Type EA Stereotype
set SET Package Package
folder FLD Package Package
system architecture SYSARCH Class Class
Satisfied By Satisfied By Dependency Dependency

Original Key Mapping

Only the ORIGINAL set key is used. For example if you change the key of your set from SYSRQ to SYSREQ you would still have to map SYSRQ. The types original key can always be found in the administration under "Item types".

Default Attribute Mapping

The default mapping for exporting from EA to Jama Connect contains following attributes:

Jama Connect Property EA Property
name Name
description Documentation

A complete mapping rule can be seen in the following picture. Mapping Rule for *Component*

Type Mapping in general

To map the type, a matchingRule is used, for example:

<matchingRule>
    <externalProperty name='_objectType' value='SYSARCH'/>
    <myumlProperty name='_objectType' value='Class'/>
</matchingRule>

This matching rule maps the Jama Connect item type “SYSARCH” - key for System Architecture - (externalProperty) to the EA element type “Class” (myumlProperty).

Class is a generic element type, which would also include SysML Blocks, since they derive from UML Classes. In order to define a more specific mapping the matching rule has to be extended by a stereotype:

<matchingRule>
    <externalProperty name='_objectType' value='SYSARCH'/>
    <myumlProperty name='_objectType' value='Class'/>
    <myumlProperty name='_stereotype' value='SysML1.4::block' />
</matchingRule>

This specific mapping only considers SysML Blocks and ignores basic UML Classes.

Another example of a special type mapping is the EA element type Requirement. Since requirements do not exist in the base UML definition, a special stereotype needs to be used to map requirements:

<matchingRule>
            <externalProperty name='_objectType' value='SYSRQ' />
            <myumlProperty name='_objectType' value='Class' />
            <myumlProperty name='_stereotype' value='EA Specifics 1.0::requirement' />
</matchingRule>

Supported EA Element Types

LemonTree Connect uses different terms for element types and attribute names. In the mapping file, you have to use the LemonTree Connect specific names in order to properly map those element types. Please refer to the following table below:

Type Meaning Value to use in the mapping xml
Attribute, Part or Required / Provided Interface Property
Accept Event Action AcceptEventAction
Action Pin ActionInputPin
Activity Activity
Activity Parameter ActivityParameterNode
Actor Actor
Artifact Artifact
Call Behavior Action CallBehaviorAction
Call Operation Action CallOperationAction
Component Component
Class Class
DataType DataType
Enumeration Enumeration
Object InstanceSpecification
Interaction Interaction
Interface Interface
Atomic Action OpaqueAction
Operation Operation
Package Package
Port Port
Requirement1 Class (+Stereotype EA Specifics 1.0::requirement)
Send Signal Action SendSignalAction
Signal Signal
State State
StateMachine StateMachine
Trigger Trigger
UseCase UseCase

Attribute Mapping in general

To map an attribute, a “property” is used:

<property external='name' myuml='Name'/>

In this example, the Jama Connect attribute “name” (external) is mapped to the EA attribute “Name” (myuml).

If you want to use custom EA attributes (=tagged values), you can use the same mechanism of the property mapping, but use a double “:” in front of the attribute name:

<property external="uri" myuml="::Uri"/>

In this example, the Jama Connect attribute “uri” is mapped to an EA tagged value “Uri”. Tagged values don't have to be created upfront, as they are created on import.

Tagged values can be found in the Tags tab as part of EA properties section.

System Boundary

Alternatively, you can enable the Properties element tool:

editors

tags

Supported EA Attributes

LemonTree Connect uses different terms for element types and attribute names. In the mapping file, you have to use the LemonTree Connect specific names in order to properly map those attributes. If an attribute can only be used for specific EA Types (f.e. "Fixed Value" is a specific attribute of a Parameter), it is mentioned in the column "Applies only to EA Type". If it can be used with many types, the column is empty.

Please refer to the following table below:

Attribute Meaning Applies only to EA Type Value to use in the mapping xml
Alias MyUmlExt:Alias
Author EA Specifics 1.0::Author
Classifier2 #Type
Complexity EA Specifics 1.0::Complexity
Const Attribute IsReadOnly
Containment Attribute AggregationKind
CreatedDate Element Metadata 1.0::CreatedDate
Default Value Parameter DefaultValue
Direction Parameter Direction
Fixed Value Parameter EA Specifics 1.0::IsConst
Initial Value Attribute DefaultValue
IsCollection Attribute EA Specifics 1.0::Attribute::IsCollection
Lower Bound Attribute, Parameter LowerBound
ModifiedDate Element Metadata 1.0::ModifiedDate
Multiplicity All Elements like Class,
Activity, Interface, etc.
EA Specifics 1.0::Multiplicity
Name Name
Notes Documentation
Phase EA Specifics 1.0::Phase
Return Type Operation #Type2
Simple Type (f.e. int, boolean, etc.) Operation, Attribute EA Specifics 1.0::TypeString
Status3 EA Specifics 1.0::Status
Static Attribute IsStatic
Stereotype EA Specifics 1.0::StereotypeString
Upper Bound Attribute, Parameter UpperBound
Version EA Specifics 1.0::Version

Using the "Status" property of Requirements in EA

In order to save and visualize the status property of requirements in EA properly, the attribute mapping has to be done in a specific way. 

If you want the importer to write the status of the Polarion item into the EA status property, you have to create an attribute mapping that looks like this:

<property external='reqStatus' myuml='EA Specifics 1.0::requirement::Status' />

Here is an example of using the status property with a SysML requirement:

<mappingRule>
    <matchingRule>
        <externalProperty name='_objectType' value='SYSRQ'/>
        <myumlProperty name='_objectType' value='Class'/>
        <myumlProperty name='_stereotype' value='EA Specifics 1.0::requirement' />
    </matchingRule>
    <properties>
        <property external='name' myuml='Name'/>
        <property external='description' myuml='Documentation'/>
        <property external='reqStatus' myuml='EA Specifics 1.0::requirement::Status' />
    </properties>
</mappingRule>

However, we recommend not using the status property from EA or Jama Connect for attribute mappings. In both tools, the status properties have predefined values, which should be set directly in the tool, with the allowed values and they might be related to specific workflows and / or state transitions.

Mapping EA Connectors to Relationships

The matching rule is also used to map EA connectors to Jama Connect relationships:

<matchingRule>
            <externalProperty name="_linkField" value="Satisfied By" />
            <myumlProperty name="_objectType" value="Dependency" />
</matchingRule>

In this example the relationship "Satisfied By" from Jama Connect (externalProperty) is mapped to the EA connector type “Dependency” (myumlProperty).

Supported link types are:

  • Association
  • Dependency
  • Generalization
  • Realization
  • Aggregation
  • Composition

If you want to use extended connectors you have to use stereotypes. For example, a trace connector in EA is a dependency with the stereotype EAUML::trace. For a trace connector, the matching rule would look like this:

<matchingRule>
    <externalProperty name='_linkField' value='implements' />
    <myumlProperty name='_objectType' value='Dependency' />
    <myumlProperty name='_stereotype' value='EAUML::trace' />
</matchingRule>

Another example for for an extended connector type is a satisfy connector from SysML:

<matchingRule>
    <externalProperty name='_linkField' value='implements' />
    <myumlProperty name='_objectType' value='Dependency' />
    <myumlProperty name='_stereotype' value='SysML1.4::satisfy' />
</matchingRule>

Usage of Aggregation and Composition as virtual connector types

To use Aggregation or Composition connector types, objectType has to be set to #Aggregation or #Composition.

<mappingRule>
        <matchingRule>
            <externalProperty name='_linkField' value='implements'/>
            <myumlProperty name='_objectType' value='#Aggregation'/>
        </matchingRule>
</mappingRule>
<mappingRule>
        <matchingRule>
            <externalProperty name='_linkField' value='depends_on'/>
            <myumlProperty name='_objectType' value='#Composition'/>
        </matchingRule>
</mappingRule>

Note

Associations with "shared or composite" Target Aggregation Property now also need the virtual Type mapped. Aggregations with "shared or composite" Source Aggregation Property still need Association Type mapped.


  1. Requirements are no valid UML types. Therefore EA uses a specific profile to define requirements. EA Requirements have to be mapped using the UML type Class and a stereotype EA Specifics 1.0::requirement. Example mapping:

    <matchingRule>
                <externalProperty name='_objectType' value='SYSRQ' />
                <myumlProperty name='_objectType' value='Class' />
                <myumlProperty name='_stereotype' value='EA Specifics 1.0::requirement' />
    </matchingRule>
    
     

  2. Classifier stands for all different kind of Elements, which are referenced by type. This includes: Type of Objects, Return Type of Operations, Type of Attributes, Type of Parameters, Type of Ports, Type of Activity Parameters, Type of Action Pins. 

  3. If you use an element of type Requirement in the mapping (a Class with the Stereotype EA Specifics 1.0::requirement), you have to use the attribute name EA Specifics 1.0::requirement::Status. See Using the "Status" property of Requirements in EA for more details.