This topic applies only to the IBM Business Process Manager Advanced configuration.

Relationship editor

IBM® Integration Designer's relationship editor enables building and editing relationships and their attributes through a graphical interface.

The relationship editor contains the following elements:
  • Relationship section
  • Roles section
  • Property pages

Relationship section

The Relationship section only contains the relationship object which is the root object of the relationship editor. The selected relationship has a blue border. If the relationship is not selected, the border is colored gray. When hovering over the relationship, the border is yellow and the name of the relationship will be given in the help.

The Relationship section has no actions defined, therefore, there is no toolbar available.

When right-clicking the relationship, a menu opens with four actions defined:
  • Undo Add role - you can undo the last action done in the editor.
  • Redo - you can revoke the last action which has been undone.
  • Show in Properties - the properties view of the relationship will be opened.
  • Add Role - the Select Data Type window will launch and after selecting a data type a new role will be added to the Roles section.

Roles section

From the Roles section of the relationship editor, all of the roles of the relationship are shown and can be edited.
The Roles section has four actions defined which are enabled dynamically:
  • Add role action Add role action - this action is always enabled and launches the Select Data Type window to select a data type for the new role which should be added.
  • Delete role action Delete role action - this action is only enabled if a role is selected which can be deleted. Deleting a role will also remove the role file from the project (a window will open to ask for confirmation). Internal roles do not need a confirmation as no file will be deleted because they are inlined into the relationship file.
  • Add key attribute action Add key attribute action - this action is only enabled if a role or role object is selected. This launches the Select Key Attribute window. The add key attribute action is disabled for simple XSD data types as the key attribute always is "Data".
  • Remove key attribute action Remove key attribute action - this action is only enabled if a key attribute is selected and removes the selected key attribute. The "Data" key attribute of a simple XSD data type cannot be removed, therefore, the remove key attribute action is disabled for those key attributes.

The Roles section contains roles and there are four different appearances of the roles. There are internal roles and external roles which can also be regular or managed. The managed role is always colored in light blue and is the first role in the Roles section.

As the external roles are in separate files than the relationship, they have a location information attached to them.

The Customer information is needed as the roles can be spread across different modules in the non-lookup relationship. Internal roles do not need that information because they are inlined in the relationship.

The Key attribute ID part of the role shows the role object, which is the data type used for the role.

The Key attributes list shows the key attribute which is used for the role. Key attributes can be any attribute of the data type. Normally there are attributes used which have a special function in the data type such as the unique key. For combined key attributes several attributes can be chosen as key attributes.

Property pages

In the relationship editor, there are four property pages available for the relationship. The Description page handles general detailed information about the relationship. The Details page displays the type of the relationship. The Properties page allows you to define user defined properties. The Instance Data page is only available if the static flag is activated during relationship creation.

The following information provides more details on each of the property pages:

Description page
The detailed information of that particular relationship is shown here. From here you can set the name of the relationship, as well as the name which will be displayed in the relationship editor. The Namespace can be adjusted and you will be able to see the file location. Changing the name will have no impact on the file name. If the file location is moved, it will not have an impact on the relationship as the identifier is Name + Namespace. The Synchronize with the name field check box is used to ensure that the Name value and Display name values are identical. If the flag is true, then it is only possible to change the Name field. The Display name value follows the changes in the Name field. Note that the synchronize flag is not stored in the .rel file. This means, that each time you open the relationship editor, the initial flag status is calculated by the editor itself. The rule is that if the values of Name and Display name are identical on the load time of the editor, then the flag is set to true. If the values are different, then the flag is set to off.
Details page
This page displays information about the type of the relationship. There are four different types of relationships:
Table 1. Relationship types
Type of relationship A one-to-one relationship between business objects using the unique primary key A one-to-one, one-to-many or many-to-many relationship between business objects using any attribute Used to transform data attributes according to a static mapping
Identity X    
Non-identity   X  
Identity-lookup X   X
Non-identity lookup   X X
Properties page
This page allows you to create user defined properties which are used to enhance the relationships and roles with properties which are evaluated during relationship service runtime.
Instance Data page
This page is only available if the static flag is activated during relationship creation.
Note: User defined properties are used to enhance the relationship or role with properties which are evaluated during relationship service runtime. The relationship editor can be used to define user defined properties for relationships and roles on a property page in the Properties view of those objects.