Designer > Implementing a BPMN Gateway or Control Flow > Gateway


The notation for a gateway control flow is BPMN only. This control flow is equivalent to a BPEL Empty activity.
A gateway represents a control point in a process. It plays two roles: join sequence flows together and split them apart. A gateway can play either role or both roles at the same time. The joins and splits are accomplished by incoming and outgoing links.

About Gateway Types

There are four types of gateways, discussed below. When you select a type, in the Properties view of a gateway, the join conditions of the incoming and outgoing links are automatically generated for that type. For a complex gateway, you can add the join condition manually. The default gateway type is Exclusive.
Based on the join conditions of the incoming or outgoing links, a gateway can be classified as one of the following:
The BPEL structured activities, such as if, while, repeat until or for each easy-to-use alternatives to building decision-making with a gateway.
An exclusive gateway is a good choice as the source or target of a loop-back links. For details, see Mutually Exclusive Transitions.
Required Properties
Optional Properties
Gateway Type
Join Condition.
Suppress Join Failure.
Setting Visual Properties and Using Your Own Library of Images
Execution State.
Extension Attributes and Extension Elements.
Mutually Exclusive Transitions

Building a Gateway

Use the following procedure to build a gateway:
  1. 1. From the Gateway palette, drag a gateway to the Process Editor canvas.
  2. 2. Drag an activity, such as invoke, either below or above the gateway to automatically link it into a sequence.
  3. 3. If desired, add another activity to the canvas and link the two activities.
  4. 4. For tips on designing with links, see Adding a Link with a Transition Condition.
  5. 5. As desired, add transitions conditions to links, and then select the corresponding Gateway Type from the Properties view.

Mutually Exclusive Transitions

"Mutually Exclusive Transitions" is a property of all activities, but we recommend that you do not set this property directly. The exclusive gateway automatically sets this property to Yes.
This property, when set to Yes, declares that outbound links are mutually exclusive. This allows you to create loop-back links and create links that break out of a structured activity. Since there is no way to validate that two or more link conditions will not cause simultaneous execution of a target activity, you must set this property. For details, see Process Developer Extension for Links.
The Mutually Exclusive Transitions property is set to No as a default on all activities except the exclusive gateway, where it is set to Yes.