Skip to main content

Relationships

Available in product editions: ArchitectProfessional

Introduction

Relationships play a central role in modeling the interaction between model elements. Each line drawn on a diagram represents a direction that specifies the dependency or data flow through a label. In addition, a scope can be used to determine whether the connection is synchronous or asynchronous. Multiple relationships are also possible to represent complex and multi-layered interactions between model elements.

Relationships overview

This page provides you with an overview of all relationships between the model elements within the project.

You can view the details of a relationship by clicking on the respective row within the table or using the table row action Show details. This opens a second column to the right of the table where the following information can be accessed:

  • Details: Master data of the relationship, excluding the description (see also Create a relationship); all writable fields are editable here as well.
  • Description: The description of the model element
  • Relationships: This tab contains all model elements of the project that are used as “source” and “target”. In a diagram, these relationships are visualized as arrows between the model element cards.
  • Usages: Displays where the relationship is already in use.

Additionally, you can find the following actions in the overflow menu of the details:

  • Remove from diagram: Remove the relationship from the current diagram. It does not get deleted and can be re-added to the diagram (also via DEL).
  • Delete relationships (see Delete a relationship below)

Filtering

Custom filters

In all tables within the Solution Designer, you can filter the view to only display the information you need via the Configure filter dialog accessible via the filter icon which is located right above each table. You can set a filter for one column at a time. Select the column you want to filter for, choose an operation and enter your filter value. This is a list of all operations available (note that depending on the column type some operations might not be available):

Standard Text Filters

These operations search for text inside a column without worrying about capital or lowercase letters.

  • Includes: Shows rows where the column text contains your filter value anywhere inside it (e.g., searching "apple" will find "Pineapple", "Apples", and "snapple").- Not Includes: Shows rows where your filter value cannot be found anywhere inside the column text (e.g., searching "apple" will hide "Pineapple" but keep "Banana").
  • Equals: Shows rows only if the column text matches your filter value exactly from start to finish (e.g., searching "Apple" will find "Apple", but will hide "Apples" or "Green Apple").
  • Not Equals: Shows rows only if the column text is different from your filter value (e.g., searching "Apple" will keep everything except rows that say exactly "Apple").
Case-Sensitive Filters

These operations work exactly like the standard text filters, but capitalization must match exactly.

  • Includes (case sensitive): Finds the value inside the column, but capital and lowercase letters must match perfectly (e.g., searching "Apple" will find "Green Apple", but will hide "pineapple" because of the lowercase "a").
  • Not Includes (case sensitive): Hides rows that contain the exact capitalized value, but keeps rows if the capitalization is different (e.g., searching "Apple" hides "Green Apple" but keeps "pineapple").
Multi-Value List Filters

These operations are used when a column contains a list of multiple items and the user enters multiple values to filter by (only available for data type tags).

  • Includes all: Shows rows only if the column contains every single one of the selected values (e.g., filtering for "Red" and "Large" only shows items that are both Red and Large).
  • Not includes all: Hides rows only if they contain every single one of your values at the same time; it keeps rows that have only some or none of them.
  • Includes some: Shows rows that contain at least one of the selected values (e.g., filtering for "Red" and "Blue" shows items that are Red, items that are Blue, and items that are both).
  • Not includes some: Hides rows if they contain any of the selected values (e.g., filtering for "Red" and "Blue" will hide any item that has Red or Blue in it).
ℹ️note

Please note that you can only add one filter value per filter (expect for columns of data type tags). If you want to combine filters, add additional filter(s) per value via the Add filter button. They will be combined with a logical OR. That means rows will be shown if at least one of the filters matches a data set.

After clicking on Apply, the table is displayed filtered according to your given values. The filters are additionally displayed above the table, where you can also remove individual ones via clicking their x icon, or clear all filters at once via Clear filters to return to the standard view of the table.

Quick filters

For some tables in the Solution Designer, pre-defined quick filters are available and displayed permanently above the table. These fixed filters can also be combined with additional custom filters as described above.

Create a relationship

Relationships can be created on a diagram. Each model element card has two nodes for adding relationships. Just click on the bottom node and drag the cursor to the top node of the model element you want to connect it to. The Incoming and Outcoming endpoints are immediately reflected within the Relationships tab of the model elements details as well. You can specify the type of relationship between the two elements by clicking on the relationship and entering a label in the sidebar.

Additionally, you can also create relationships in the details of a model element by clicking on the + button in the top right corner of the Relationships tab.

Relationships are defined using the following master data:

  • Label: The relationship label to indicate the dependency or data flow (optional)
  • Type: The kind of relationship. Possible types are preset by the OML configuration (required).
  • Description: This is a description of the relationship (optional)
  • Color: Color in which the relationship is displayed on the canvas. Default colors are preset by the OML configuration (optional).
  • Stroke and Stroke width: Stroke type and width in which the relationship is displayed on the canvas. Default stroke types/widths are preset by the OML configuration (optional).
  • Start marker and End marker: Arrow start and end markers with which the relationship is displayed on the canvas. Default markers are preset by the OML configuration (optional).
  • Tags: To tag the relationship (optional)

Edit a relationship

All editable fields can be directly edited within the details view of a relationship. You can view the details of a relationship by clicking on the respective row within the table or using the table row action Open details. This opens a second column to the right of the table where all information can be accessed and changed.

Delete a relationship

The capability to delete a relationship can be found in overflow menu at the end of each table row, as well as in the overflow menu of the details section of each model element.

warning

When you delete a relationship, it is also removed from all diagrams in which it is used. You will need to confirm the action before the selected relationship is permanently deleted.

Delete unused relationships

To remove the relationships no longer used in the project, click the Delete unused button.