Exclusive Gateway

An Exclusive Gateway indicates a point in the process where multiple alternative paths are possible. Use it when the process can take only one path.

The decision of which path the process will take is based on the evaluation of conditions that you define on Sequence Flows. The Sequence Flow with the condition “true” is selected to continue the process. If there are no Sequence Flows with the condition “true”, the execution will result in a runtime exception. To avoid this, you can define a default Sequence Flow in Attributes, in the Conditions tab.

An Exclusive Gateway appears as a diamond shape with an X marker.

an Exclusive Gateway symbol

Exclusive Gateway attributes

Fill in this field in the Attributes tab:

  • Marker Visible

    Clear the check box to hide the marker.

    We recommend you always keep markers visible as they help to distinguish one Gateway from another.

 

Define this attribute in the Conditions tab:

  • Conditions

    If there are multiple outgoing Sequence Flows and a condition is defined for each of those Sequence Flows, at least one of the Sequence Flows must have a condition expression that evaluates to true.

    • Click and drag Sequence Flows to define the order of outgoing Sequence Flows when more than one condition can evaluate to true. In this case, the flow continues with the first of these conditions.

    • Turn on the Is default toggle to select a default Sequence Flow in the event none of the other Sequence Flow conditions evaluate to true.

    default Sequence Flow conditions of a BPMN element

     

    To define a Condition on a Sequence Flow:

    1. Select a Sequence Flow from the list.

    2. In the panel that opens, in the Condition section, select the type of condition:

    • None: No condition defined.

    • Binary: Define a condition expression by comparing two Data Elements or values.

      Operands are the two Data Elements/values you want to compare. Operator is the comparison operator you use.

      Fill in these fields:

      Field Description
      First operand Click to select a Data Element.
      Operator Click to select an operator.
      Second operand Select a Data Element or insert a value.

    defining a condition on a Sequence Flow

    • Free: Define a condition according to your requirements. There are no limitations on the language or expression. This condition is not executable.

      Fill in these fields:

      Field Description
      Language There is no default language. Use the language you prefer.
      Expression Boolean type expression. The condition must evaluate to true.