<Mapping> elements

The <Mapping> elements define the mapping between a business model object type in WSRR and the corresponding asset type in Rational® Asset Manager.

A business model object type in WSRR always maps to an asset type with a specific category in Rational Asset Manager. In order to participate in the synchronization between WSRR and Rational Asset Manager, the business model in WSRR must be a subclass of the Asset type.

However, the same asset type in Rational Asset Manager may correspond to several different business model types in WSRR, in such cases the Rational Asset Manager category applied to the asset is used to differentiate between the types.

The <Mapping> element defines the metadata properties and relationships of an object type that is synchronized between the WSRR and Rational Asset Manager implementations.
Note: It is not necessary for the Rational Asset Manager and WSRR objects to have an identical set of attributes and relationships, only that they have a set in common that can be synchronized between the two systems.
The <Mapping> element has the following attributes:
Table 1. <Mapping> element
Attribute Required Value
id No Identifies this mapping.
extends No Refers to another mapping id attribute and indicates that this mapping is a subclass of the referenced mapping. All of the properties and relationships defined in the superclass are considered to be included in this subclass mapping.
wsrrType Yes The full URI of the WSRR business model primary type.
ramType Yes The name of the Rational Asset Manager asset type, or the following special name to refer to the base Rational Asset Manager asset type: RAM_Asset.
ramCategory No The category used to distinguish the Rational Asset Manager asset type. Rational Asset Manager categories normally form a hierarchy, the required category is identified by specifying the elements of the hierarchy separated by forward-slash characters.

Example of the <Mapping> Element

<Mapping extends="CAPVER"
   ramCategory ="Software Development/Kind/Service"
   ramType ="Release" 
   wsrrType ="http://www.ibm.com/xmlns/prod/serviceregistry/profile/v6r3/GovernanceEnablementModel#ServiceVersion">
</Mapping>

This is the mapping for WSRR objects of type ServiceVersion, that is mapped to the Rational Asset Manager asset type called Release. It conforms to a category on Rational Asset Manager that comes under the Software Development folder, and is categorized as a Service. Additionally, this mapping is an extension of one tagged as CAPVER, indicating a CapabilityVersion; this is described in the next section which shows how attributes of the objects are synchronized.

<Attribute> elements

A <Mapping> element indicates which object types on the two systems must stay synchronized. The <Mapping> element must specify which parts of the object types must be synchronized; this is specified using sub-elements called <Attribute> elements, which have their own set of attributes.
Table 2. <Attribute> element
Attribute Required Value
ramName Yes The Rational Asset Manager attribute name. This is the name of the attribute as defined on the Rational Asset Manager asset type or one of these special names that refer to the standard Rational Asset Manager asset attributes:
  • RAM_name
  • RAM_description
  • RAM_fullDescription
  • RAM_state
  • RAM_owners
wsrrName Yes The WSRR property name. This is the name of the property as defined in the WSRR business model including the business model prefix, or one of these special names that refer to the standard WSRR object properties:
  • WSRR_name
  • WSRR_namespace
  • WSRR_version
  • WSRR_description
  • WSRR_state
type No The datatype for this attribute, which should be one of:
  • string (default)
  • boolean
  • date
  • url
map No Defines whether this attribute should be mapped from Rational Asset Manager to WSRR only, from WSRR to Rational Asset Manager only or in both directions. One of:
  • BOTH - Map both ways (default).
  • RAM - Map from Rational Asset Manager to WSRR only.
  • WSRR - Map from WSRR to Rational Asset Manager only.

Examples of the <Mapping> Element using an <Attribute> Element

<Mapping extends="ASSET" id="CAPVER" 
ramType="Release" wsrrType="http://www.ibm.com/xmlns/prod/serviceregistry/profile/v6r3/GovernanceEnablementModel#CapabilityVersion">
	<Attribute ramName="Availability Date" 
	type="date" 	
	wsrrName="gep63_versionAvailabilityDate"/>
	<Relationship ramName="specification" 
	wsrrName="gep63_interfaceSpecifications"/>
	<Relationship ramName="Release For" 
	wsrrDirection="reverse" 	
	wsrrName="gep63_capabilityVersions"/>
</Mapping>
The ServiceVersion mapping inherits from the CapabilityVersion mapping, and so maps attributes and relationships between WSRR and Rational Asset Manager. For example, any changes in the WSRR ServiceVersion's gep63_versionAvailabilityDate attribute are reflected in the corresponding Rational Asset Manager Releases Availability Date attribute. However, as can be seen from the example above, a synchronized object not only contains attributes, it also contains relationships. These define the relationships that must be synchronized between the WSRR and Rational Asset Manager implementations of the object.

<Relationship> elements

Table 3. <Relationship> element
Attribute Required Value
ramName Yes The Rational Asset Manager relationship name. This is the name of the relationship as defined on the Rational Asset Manager asset type or a special value that indicates that the target of this relationship in WSRR should be added as an artifact to the Rational Asset Manager asset: _artifactLabel<nnn>

where <nnn> is a unique value.

wsrrName Yes The WSRR relationship name. This is the name of the relationship as defined in the WSRR business model including the business model prefix.
wsrrDirection No The relationship direction. This applies when determining the relationship targets that apply to a Rational Asset Manager asset when mapping from a WSRR object. One of:
  • forward (default) - Map the objects that are the target of the relationship in WSRR.
  • reverse - Map the object that has a relationship with this WSRR object. An example of this is given below.
ramArtifactLabel No If the relationship target is to be added as a Rational Asset Manager artifact, this attribute defines an optional label to identify the artifact in Rational Asset Manager.

Examples of the <Mapping> Element using a <Relationship> Element

Consider the <Relationship> elements in the previous example:
<Relationship ramName="specification" 
       wsrrName="gep63_interfaceSpecifications"/>
<Relationship ramName="Release For" wsrrDirection="reverse" 	
	wsrrName="gep63_capabilityVersions"/>

The first element is synchronizing the relationship known as gep63_interfaceSpecifications on a WSRR Capability Version object with the relationship known as specification on a Release object in Rational Asset Manager.

The second element is synchronizing a relationship named gep63_capabilityVersions on WSRR, that is actually a relationship on a Business Capability referring to a Capability Version, to a relationship named Release For on Rational Asset Manager, that is actually a relationship on a Business Solution referring to a Release. Because the object that is being mapped is the Capability Version itself, and these relationships have Capability Versions as targets, the extra attribute wsrrDirection="reverse" is included to indicate the direction of the relationship synchronization.

<Mapping extends="ASSET" id="BUSCAP" ramType="Business Solution"
		wsrrType="&GEP63;BusinessCapability">
	<Relationship ramName="specification" 
		wsrrName="gep63_serviceInterfaceVersions" />
	<Relationship ramName="release"
		wsrrName="gep63_capabilityVersions" />
	<Relationship ramArtifactLabel="Charter" ramName="_artifactLabel1"
		wsrrName="gep63_charter" />
</Mapping>
In the example above, the <Mapping> element, this time for a Business Capability in WSRR, maps to a Business Solution on Rational Asset Manager. The first two relationships have a specific ramName. This is because there is a matching relationship on both WSRR and Rational Asset Manager. However, Rational Asset Manager does not have a pre-defined charter relationship, so an artifact label has to be created in substitution for a defined label. The meaning of this last relationship element is that the relationship called gep63_charter on WSRR, will be synchronized with a generated relationship on Rational Asset Manager which will be labelled Charter.
This mapping makes use of a standard xml form of substitution to allow for the insertion of the main part of the URI defining WSRR object types. For example, the &GEP63 included in the <Mapping> element above is a reference to the following, contained at the top of the configuration file:
<!DOCTYPE ALE63 [
	<!ENTITY ALE63 "http://www.ibm.com/xmlns/prod/serviceregistry/v6r3/ALEModel#">
	<!ENTITY GEP63 "http://www.ibm.com/xmlns/prod/serviceregistry/profile/v6r3/GovernanceEnablementModel#">
	<!ENTITY GEPLifecycle "http://www.ibm.com/xmlns/prod/serviceregistry/lifecycle/v6r3/LifecycleDefinition#">]>
Which means the wsrrType is fully expanded to be:
"http://www.ibm.com/xmlns/prod/serviceregistry/profile/v6r3/GovernanceEnablementModel#BusinessCapability"
The full list of the default mappings is contained in the table: WSRR to Rational Asset Manager mappings.