On this page

Association Ends are represented by properties each of which is connected to the type of the End. When a property is an Association End, the value or values are related to the instance or instances at the other End(s) of the Association.

An Association End is the connection between lines depicting an Association and the shape.

The following properties of the association end can be specified: name, association end type, visibility, multiplicity, qualifier, aggregation kind.

Association end properties

Name

The Association End has other name - role. A role indicates a role played by the Class in terms of an Association. The role name is placed at the Association End near the Class playing that role. The role name at the implementation level maps to the reference name of the opposite Class. Roles can have visibility (public, package, protected, and private).  

Association End type 

Changing the Association End type, changes the target of the Association or in other words the classifier to which the Association is connected. 

Qualifier 

A qualifier is an attribute or a list of attributes whose values serve to partition the set of instances associated with an instance across an Association. Qualifiers are attributes of an Association. It is represented as a small rectangle attached to the End of an Association path between the final path segment and the symbol of the classifier that it connects to. The qualifier rectangle is part of the Association path, not part of the classifier. The qualifier rectangle drags with the path segments. The qualifier is attached to the source end of the Association.


Editing the Association End properties


To change the Association End type, do one of the following


  • On the diagram, select the Association End and move it to the other target. The Association is connected to the other target and the type of the Association End (that is, property) is changed.
  • In the Containment tree, select the property which represents the Association End and drag it onto the available classifier (the Association target). If the Association is represented on the diagram pane, the Association is redrawn (connected) to the changed target automatically.
  • In the property (that is, the Association End) Specification window, change the Type property value.


To define the Association End visibility


  1. Open the Association End Specification window.
  2. From the Visibility list, select one of the visibility type.


The Association End multiplicity describes how many entities are participating at each Association End:

  • 0 – zero and only zero.
  • 1 – one and only one.
  • 0..1 – zero or one.
  • 0..* – from zero to any positive integer.
  • 1..* – from one to any positive integer.
  • * – any positive integer.


To place multiplicity values in Association path ends


  • Open the shortcut menu of a selected Association End and click a desired multiplicity.
  • Open Association’s shortcut menu, point to one of the desired Association Ends (Role of <class name>), and then click the desired multiplicity value.
  • Open the Association Specification window and, from the Multiplicity list, select or type the multiplicity value for the desired Association End.
  • Perform the following steps:
    1. Open the Association End Specification window.
    2. In the Multiplicity property value cell, type or select from the list a multiplicity value.
  • Edit directly on the diagram pane:
    1. Select multiplicity area and press F2 to switch it to edit mode.
    2. Press Ctrl + Spacebar or Ctrl + Backspace to see available suggestions.

Choose one of the suggestions or type the multiplicity value.


To define an Association End name


  • Open the shortcut menu of a selected Association End and click Edit Name. The Association End is marked for editing. Type or edit the name directly on the diagram pane.
  • Open the Association’s shortcut menu, point to one of a desired Association End (Role of <class name> ), and then click Edit Name. The Association End is marked for editing. Type or edit the name directly on the diagram pane.
  • Perform the following steps:
    1. Open the selected Association End Specification window.
    2. Type the Association End name in the Name property value cell.

Defining Association End qualifiers

A qualifier is an attribute or a list of attributes whose values serve to partition the set of instances associated with an instance across an Association. Qualifiers are attributes of an Association. It is represented as a small rectangle attached to the end of an Association path between the final path segment and the symbol of the classifier that it connects to. The qualifier rectangle is part of the Association path, not part of the classifier. The qualifier rectangle drags with the path segments. The qualifier is attached to the source end of the Association.


To add, edit, or remove a qualifier to/from an Association End


  1. Open the Association End Specification window.
  2. In the property group list, click the Qualifiers group and do one of the following:
    • To add a new qualifier, click the Create button. In the opened qualifier Specification window, define qualifier properties and click Back to return to the Association End Specification window or click Close to exit the Specification window.
    • To edit a qualifier, select a qualifier and edit its properties in the Association End Specification window or click the Open Specification button  at the end of a qualifier row to edit qualifier properties in the qualifier Specification window.


      Existing qualifiers are also displayed in the property group list under the Qualifiers group. Click the selected qualifier to open its Specification window, and define qualifier properties there.

    • To remove a qualifier, select a qualifier and click Delete.
  3. After you have finished working with qualifiers, click Close to exit the Specification window.

Defining Association End aggregation

The shared or composite aggregation kind can be assigned to the Association End. A composite aggregation is represented as a filled diamond. A shared aggregation is represented as a hollow diamond.

Representation of composite and shared aggregations


To assign an aggregation kind to the Association End


  • Open Association’s shortcut menu, point to one of the desired Association Ends (Role of <class name> ), and then select one of the following:
    • None. No aggregation is assigned to the selected Association End.
    • Shared.
    • Composite.
  • On the diagram palette, click the Composition or Aggregation button and draw an appropriate path on the diagram.
  • Right click the Association path end and select Shared or Composite command from the shortcut menu.
  • Perform the following steps:
    1. Open the selected Association or Association End Specification window.
    2. For the selected Association End, click Aggregation property value cell to select an aggregation kind (None, Shared, or Composite).

      By default, the Aggregation property is in the All properties display mode.

Showing Association End properties

If two classes are linked with an Association path, both Classes have an attribute of an opposite Class type. This property can be displayed on the Class shape as well as an Association link.


To show Association Ends as attributes on linked Class shapes


  1. From the Class shortcut menu, select Symbol Properties or press Alt+Enter. The Symbol Properties dialog opens.
  2. In the Attribute category, click the Show Association End as Attributes property value cell.
  3. Click one of the following display modes:
    • All. Properties and Association paths will be displayed on the Class shape.
    • Without Association Symbol. If an Association symbol is deleted, the property will be displayed on the Class shape.
    • Do Not Show. Neither property, nor Association path will be displayed on the Class shape.

An Association End is defined as a property. It has attribute properties defined in the Specification window.


To show Association Ends as Ports on the shape


  1. Select the shape on which you want to display Association Ends as Ports and open its Symbol Properties dialog:
    • Right-click a shape to open the shortcut menu, and click Symbol Properties.
    • Press Alt+Enter.
  2. In the Symbol Properties dialog, at the right-top corner, click to expand the menu and select the All mode.
  3. Under the Ports category, click the Show Association Ends as Ports property cell and select All.

Example of displaying association end as port on shape

Converting Association End properties

To convert an Association role to an attribute


  1. On a diagram pane, select an Association with a role.
  2. From its shortcut menu, select the Refactor > Convert To > Attribute(s).

The Association is converted to the attribute.

Example of association role (on the left side) conversion to attribute (on the right side)

You can specify Association End properties in the Association End Specification window. In the same window, you can find the description of each property. Descriptions are presented in the description area of the Specification window.


To convert Association Ends to Ports


  1. Right- click an Association End(s).
  2. On the shortcut menu, click Refactor Convert To > Port.

Association navigability

The Association navigability indicates whether it is possible to traverse an Association within an expression of a classifier to obtain the object or a set of objects associated with instances. The navigability is shown as an arrow that can be attached to the end of the path to indicate that the navigation is supported toward the classifier attached to the arrow.

By default, an Association is navigable on both sides and its navigability is not visible.

A role indicates the role played by the Class in terms of an Association. The role name is placed at the Association End, near the Class playing that role. The role name at the implementation level maps to the reference name of the opposite Class. Roles can have visibility (public, package, protected, and private).


To change the Association navigability, do one of the following


  • Open the Association End Specification window, turn on the Expert property display mode, and do one of the following:
    • Set the Navigable property value to true to mark the Association End as navigable.
    • Set the Navigable property value to false to mark the Association End as not navigable.
  • From the Association shortcut menu, select Role of <class name> and then do one of the following:
    • Select Navigable to mark the Association End as navigable.
    • Click to clear Navigable to mark the Association End as not navigable.
  • Open the Association End shortcut menu and do one of the following:
    • Select Navigable to mark the Association End as navigable.
    • Click to clear Navigable to mark the Association End as not navigable.


To display the Association navigability


  • From both Association Ends shortcut menu, select Show Navigability.

In the following figure, the Association is navigable on both sides and its navigability is visible.

Advancing actions: navigable owned Association Ends

The navigability describes the need for an object to access another object by navigating across the link. The Association End can be owned by a classifier or an Association. The Association End owned by a classifier can be decorated with the dot. The absence of the dot signifies the ownership by the Association.

The dot notation is not enabled by default. Please pay attention to this before making decisions about the Association End ownership just from the model representation on a diagram.


To enable a dot notation


  1. On the Options menu, click Project. The Project Options dialog opens.
  2. In the General options list, select General and set the Enable Dot Notation for Associations value to true.
    Example of dot notation

According to the UML 2.4.1 specification, the Association Ends owned by Classes and Associations is navigable. This improved functionality allows a proper management of the navigableOwnedEnd property for Associations:

  • The ownership of an Association End can be changed manually.
  • The navigability of Association Ends owned by the Associations can be changed keeping the ownership.


To change the ownership of an Association End, do one of the following


  • On the Association End shortcut menu, click Owned By and then select the desired owner.
  • In the Association End Specification window, click the Owned By property value cell and then select the desired owner from the list.
  • From the Association shortcut menu, select the role of the desired Association End, click Owned By and then select the desired owner.
  • In the Association Specification window, click the Owned By property value cell of the role with the desired Association End and then select the desired owner from the list.